<SEC-DOCUMENT>0001628280-23-021822.txt : 20230612
<SEC-HEADER>0001628280-23-021822.hdr.sgml : 20230612
<ACCEPTANCE-DATETIME>20230612130428
ACCESSION NUMBER:		0001628280-23-021822
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		61
CONFORMED PERIOD OF REPORT:	20230430
FILED AS OF DATE:		20230612
DATE AS OF CHANGE:		20230612

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			VIRCO MFG CORPORATION
		CENTRAL INDEX KEY:			0000751365
		STANDARD INDUSTRIAL CLASSIFICATION:	PUBLIC BUILDING AND RELATED FURNITURE [2531]
		IRS NUMBER:				951613718
		STATE OF INCORPORATION:			DE
		FISCAL YEAR END:			0131

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

	BUSINESS ADDRESS:	
		STREET 1:		2027 HARPERS WAY
		CITY:			TORRANCE
		STATE:			CA
		ZIP:			90501
		BUSINESS PHONE:		3105330474

	MAIL ADDRESS:	
		STREET 1:		P O BOX 44846
		CITY:			LOS ANGELES
		STATE:			CA
		ZIP:			90044
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>virc-20230430.htm
<DESCRIPTION>10-Q
<TEXT>
<XBRL>
<?xml version="1.0" ?><!--XBRL Document Created with the Workiva Platform--><!--Copyright 2023 Workiva--><!--r:90287618-5607-4752-928b-06db944cd7f3,g:6eff466f-1bee-465d-8a0c-2ce3a06f0245,d:9f22950a62b445c58886781e487ff8d6--><html xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:virc="http://www.virco.com/20230430" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns="http://www.w3.org/1999/xhtml" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2020-02-12" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:srt="http://fasb.org/srt/2022" xml:lang="en-US"><head><meta http-equiv="Content-Type" content="text/html"/>


<title>virc-20230430</title></head><body><div style="display:none"><ix:header><ix:hidden><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityCentralIndexKey" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y18zLTEtMS0xLTQ4NTAy_32c6fa8b-e10d-4c3a-b69e-187a9b449147">0000751365</ix:nonNumeric><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:AmendmentFlag" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y182LTEtMS0xLTQ4NTAy_856ff50d-1e99-4438-81d1-1fa471efa10a">false</ix:nonNumeric><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:DocumentFiscalYearFocus" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y183LTEtMS0xLTQ4NTAy_0664091a-6f9f-4118-98b9-ebc1e0df58a4">2024</ix:nonNumeric><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:DocumentFiscalPeriodFocus" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y184LTEtMS0xLTQ4NTAy_fdeacaee-c07d-4a77-8c41-8bd5253ea231">Q1</ix:nonNumeric><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:CurrentFiscalYearEndDate" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y185LTEtMS0xLTQ4NTAy_084c3e21-1f6f-489c-8e05-aeefa290237b">--01-31</ix:nonNumeric></ix:hidden><ix:references xml:lang="en-US"><link:schemaRef xlink:type="simple" xlink:href="virc-20230430.xsd"></link:schemaRef></ix:references><ix:resources><xbrli:context id="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i46f3fa4db1224bdcaea94369c6d96157_I20230604"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-06-04</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="shares"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit><xbrli:context id="id96edf3311854e0493cec4b46a1f41ce_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usd"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit><xbrli:context id="ied655037fda84d3f8b3feb75fdddb53f_I20230131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i27a46d3621b9440b82c682a1833d8234_I20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="usdPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit><xbrli:context id="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-01</xbrli:startDate><xbrli:endDate>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i35924208d3d746c491b0ea2b2e4d7e29_I20220131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i667c7d8bd763413abd796ad88c8c5ee5_I20230131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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="i52f18ac9d41d46c1b4576913f0de57f0_I20230131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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="i9f3fd36ef804401099a0e750874625c5_I20230131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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="i530ce63704924b638cd8c6149473e0ad_I20230131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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="if89b5f15562444589f2f0392b7e37c7b_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ia7c69e53c96e4b93a110462966b1044c_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i256c053448c64068bcfe4b5edb8fbde9_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i6331f468c1814d99be11cc79ece13034_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ibf3a5d830a114294ba4d2e0cdabd77a6_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i6bf9009158994bc092f61b9ad38652f2_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3ed6c2f2b1f5445eb2398cc14cbf6529_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i52ba23c1caab43049763eb8c7c05905b_I20220131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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="i31bda8c8ea4842e681e8ef1dd7e18618_I20220131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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="i32b42948e1b446038414c0e7223ff341_I20220131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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="ifc993466e76e4fb891805f5b996dc151_I20220131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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="ibdec95bb07e941ebb2d1d770b5bfc78e_D20220201-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i859cef3d71ce4197917e115a33760a0c_D20220201-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2e0b8b7b8b284ac78c8f0f4961f42d6c_D20220201-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</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>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="if6576d858fc646ff91951e75237ea454_I20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia7b3209a5d5a4a70ad9bf906a779f3f1_I20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic325352fd9224629a7d5d63a7f9d3d86_I20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i635c7842e4f14afd951d730fbd2d02ae_I20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iebf10b00d5b540539b5c9836dce200af_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:unit id="number"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit><xbrli:context id="i2ab2cbba95b540a8a4bb11033f99aadd_D20210201-20220131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesMember</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="i756b4b4dd7e6405e8e3d1e8fbc4e6c8f_D20220201-20230131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesMember</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="i7a2f7b44cab3414e801e207554b6cb6a_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia4625a145f054c6f944f092eabe7972e_I20230131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie31f7af831874309a231e49017ef6fd3_I20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i817023d33a2c4b06a2faf3fe4bc4a5f3_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">virc:OtherDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if6190fa3b4a14376ba8b68fa6e2be828_I20230131"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">virc:OtherDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if29a68af9f094831869c15d74305d73e_I20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">virc:OtherDebtMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic99f7b405719435fb21df998ae2ec444_I20210928"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-09-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ifb78696c77304063b0f49344b285068a_I20210928"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="virc:DebtInstrumentCovenantPeriodAxis">virc:CovenantPeriod1Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-09-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="icb21eca85b6647d0a41413ec21a03897_I20210928"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-09-28</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ia43dde74291e440297c825b0c65e0613_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i79d1afc994cc438b9333f2182b2eb286_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i62a77fa9904b43519b12ab5521fbfc50_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">virc:InventoryMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i2ab1ef2c4f7047d48c0303f65520f6fd_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:InventoriesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i5ea441bc5c934be682f32a5baa341109_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">virc:EquipmentLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie06315b6326d4b3d98afbe1efd76fde7_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">virc:EquipmentLoanMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i9665e52c433240ef84f46d104164bd2b_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ie35abe19f9f1469a8eae1c647f7c08ef_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis">virc:AlternateBaseRateLoansMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i08ef98998f094e798fa98b2f252dc5d6_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis">virc:AlternateBaseRateLoansMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i039bec46eeb14855a38dcf9d8f5abc84_I20170831"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MortgagesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2017-08-31</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i10fa72e190f1458da0355bf56b31fc96_D20170801-20170831"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MortgagesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2017-08-01</xbrli:startDate><xbrli:endDate>2017-08-31</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="iff2c0793561f4e4984581d42b5d8aec1_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MortgagesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i128c9fd6ffdd4691a605fc1dfd1e983b_D20230519-20230519"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-05-19</xbrli:startDate><xbrli:endDate>2023-05-19</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-05-19</xbrli:instant></xbrli:period></xbrli:context><xbrli:unit id="basispoint"><xbrli:measure>virc:basisPoint</xbrli:measure></xbrli:unit><xbrli:context id="ic51b052edc494cff983b99a420d39ac3_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">virc:StockIncentivePlan2019Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i3c3e40b19dff4d9b80a30d55daa278cc_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">virc:StockIncentivePlan2019Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="idce494d0db0c4f8489d6ce35a8ab9ac9_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i11b048777b3e42b1866ea0d27d2722d7_D20220201-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-01</xbrli:startDate><xbrli:endDate>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9874a256218949168c3a713134d081a8_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ie7278e4f07694d6b92aa5b3f38b98f5c_D20220201-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-01</xbrli:startDate><xbrli:endDate>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic58191435f9940b8aa96e24508179cf1_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="if7c191c5122144d6bd53e87dd766024d_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-01</xbrli:startDate><xbrli:endDate>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i0afd8d5b22d746a699be9a50df797a36_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iddb903a8928b42768b5ce48dbcfc0fa8_I20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="iae9a75dced8442fea285b7df23400c30_D20220201-20220430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-02-01</xbrli:startDate><xbrli:endDate>2022-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i9e44ea096ef14842a0c5fcb454869591_D20230201-20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2023-02-01</xbrli:startDate><xbrli:endDate>2023-04-30</xbrli:endDate></xbrli:period></xbrli:context><xbrli:context id="i7c87a2799d93477db744937a9581ada5_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:ProductLiabilityMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i50fc8f506f0e4aa5b2177398ab79ad82_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:WorkerscompensationLiabilityInsuranceMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i1e68fc9de49749c2bdd567007cdbb5c2_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:GeneralLiabilityLossMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="ic0190406847046579553da1fad6bd7c0_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:AutomobileLiabilityLossMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context><xbrli:context id="i72ec33ce05b649ccb94d1610bf10ad39_I20230430"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0000751365</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:LossLiabilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-04-30</xbrli:instant></xbrli:period></xbrli:context></ix:resources></ix:header></div><div id="i9f22950a62b445c58886781e487ff8d6_1"></div><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td></tr><tr style="height:3pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:18pt;font-weight:700;line-height:120%">UNITED STATES</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:18pt;font-weight:700;line-height:120%">SECURITIES AND EXCHANGE COMMISSION</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">Washington, D.C. 20549</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:57.748%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:18pt;font-weight:700;line-height:100%">FORM <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:DocumentType" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6NTkwZGRhNTVkNjJkNDQ3ZmIwYzkzODYwZjE4M2RjZDcvdGFibGVyYW5nZTo1OTBkZGE1NWQ2MmQ0NDdmYjBjOTM4NjBmMTgzZGNkN18wLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246OWMwNWE5ZGFmYmEyNDRkZmJhZTRkNzYyM2Y5MmJhYzRfOQ_1db97d1b-f642-48f5-9ffb-e5d352d422d3">10-Q</ix:nonNumeric></span></div></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:4.610%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:93.190%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:DocumentQuarterlyReport" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6NWRjYjhiMzU2OWZiNDk2NDliYzFmZmQwZDUxN2MyNTYvdGFibGVyYW5nZTo1ZGNiOGIzNTY5ZmI0OTY0OWJjMWZmZDBkNTE3YzI1Nl8wLTAtMS0xLTQ4NTAy_ea657cd3-f442-44c8-befa-5a23766ffcfb">&#9746;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Quarterly Report Pursuant to Section&#160;13 or 15(d) of the Securities Exchange Act of 1934</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">For the quarterly period ended <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:DocumentPeriodEndDate" format="ixt:date-monthname-day-year-en" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xMjA_7a4a91d6-e458-4004-9d96-0fb8f3e3c769">April&#160;30, 2023</ix:nonNumeric> </span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">OR</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:4.610%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:93.190%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:DocumentTransitionReport" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6ZGM2MjE4MGM5NTFjNDRkMWFmODNlMTI1Yjk5ZDc0NjUvdGFibGVyYW5nZTpkYzYyMTgwYzk1MWM0NGQxYWY4M2UxMjViOTlkNzQ2NV8wLTAtMS0xLTQ4NTAy_57c8ea46-c8b0-48c9-ad35-a7110cecad03">&#9744;</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Transition Report Pursuant to Section&#160;13 or 15(d) of the Securities Exchange Act of 1934</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">For the transition period from&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;to&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Commission File number <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityFileNumber" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8yMDI_59d0d97a-10bb-4e24-a445-f4eda48fb074">1-8777</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:73.830%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:22pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityRegistrantName" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6OTMyODc0MzMyZGQxNDU5ZGIyOTFlZjgyZmRlYzMxNzkvdGFibGVyYW5nZTo5MzI4NzQzMzJkZDE0NTlkYjI5MWVmODJmZGVjMzE3OV8wLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246MTdkMzJkYjE2ZWEzNDViNjk0MWZiMGFlNjUyNDIyYWNfNQ_3ff61edf-e039-4b52-b56b-48e6fde6c4d1">VIRCO MFG. CORPORATION</ix:nonNumeric></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(Exact Name of Registrant as Specified in its Charter)</span></div></td></tr></table></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.444%"><tr><td style="width:1.0%"></td><td style="width:48.280%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.807%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:39.613%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityIncorporationStateCountryCode" format="ixt-sec:stateprovnameen" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8wLTAtMS0xLTQ4NTAy_135fa36f-1c35-45ea-89ba-d03675c6119c">Delaware</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityTaxIdentificationNumber" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8wLTItMS0xLTQ4NTAy_eb585405-e448-4c91-ab07-7896d7e03c30">95-1613718</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(State or Other Jurisdiction of<br/>Incorporation or Organization)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(I.R.S. Employer<br/>Identification No.)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityAddressAddressLine1" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8zLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246NzhlNjgzZjMxYWNkNGM1MDk5NjNiZDBiNTAxNWUyMzVfNA_8efea0ca-41a1-4f36-808a-618c2659decb">2027 Harpers Way</ix:nonNumeric>, <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityAddressCityOrTown" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8zLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246NzhlNjgzZjMxYWNkNGM1MDk5NjNiZDBiNTAxNWUyMzVfOA_d78346cd-466a-4cf9-8693-c7623e42cf47">Torrance</ix:nonNumeric>, <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityAddressStateOrProvince" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8zLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246NzhlNjgzZjMxYWNkNGM1MDk5NjNiZDBiNTAxNWUyMzVfMTI_8f088fc6-5939-4854-82fa-822aacecc01c">CA</ix:nonNumeric></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityAddressPostalZipCode" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8zLTItMS0xLTQ4NTAy_7ed7798b-cb6a-405c-91fc-1091d6d7e49b">90501</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(Address of Principal Executive Offices)</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(Zip Code)</span></td></tr></table></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:174%">Registrant&#8217;s Telephone Number, Including Area Code: (<ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:CityAreaCode" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8yNjU_b3a796a5-0d0d-4d6b-8bb0-941ea992948a">310</ix:nonNumeric>)&#160;<ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:LocalPhoneNumber" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTQ4_f05b308d-7a75-46ac-927e-8a41127fdaf0">533-0474</ix:nonNumeric></span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">Securities registered pursuant to Section 12(b) of the Act:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"> </span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:94.590%"><tr><td style="width:1.0%"></td><td style="width:45.731%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.654%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.873%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.809%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:37.233%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Title of each class</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Trading Symbol</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Name of each exchange on which registered</span></td></tr><tr style="height:11pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:Security12bTitle" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6MjQxNDE2NjdlMmU3NDU5NDg3NDNhNDZlMTEyY2ZkYTEvdGFibGVyYW5nZToyNDE0MTY2N2UyZTc0NTk0ODc0M2E0NmUxMTJjZmRhMV8yLTAtMS0xLTQ4NTAy_a8ff2f70-1275-4b9a-a274-26ff3925df9d">Common Stock, $0.01 par value per share</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:TradingSymbol" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6MjQxNDE2NjdlMmU3NDU5NDg3NDNhNDZlMTEyY2ZkYTEvdGFibGVyYW5nZToyNDE0MTY2N2UyZTc0NTk0ODc0M2E0NmUxMTJjZmRhMV8yLTItMS0xLTQ4NTAy_8e913012-906d-4300-a8db-f1d70af81458">VIRC</ix:nonNumeric></span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:SecurityExchangeName" format="ixt-sec:exchnameen" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6MjQxNDE2NjdlMmU3NDU5NDg3NDNhNDZlMTEyY2ZkYTEvdGFibGVyYW5nZToyNDE0MTY2N2UyZTc0NTk0ODc0M2E0NmUxMTJjZmRhMV8yLTQtMS0xLTQ4NTAy_36c8369b-22ad-460b-a456-6c8784af2371">The Nasdaq Stock Market LLC</ix:nonNumeric></span></td></tr></table></div><div style="text-align:center;text-indent:24.75pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:63.596%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-bottom:1pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;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&#160;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 contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityCurrentReportingStatus" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTQ5_fee6e99c-bc09-46d5-8245-5d08a0146e6c">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#253;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#168;</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant has submitted electronically and posted on its corporate Web site, if any, every Interactive Data File required to be submitted and posted pursuant to Rule&#160;405 of Regulation&#160;S-T during the preceding 12&#160;months (or for such shorter period that the registrant was required to submit and post such files).&#160;&#160;&#160;&#160;<ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityInteractiveDataCurrent" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTUw_e43e2cf7-3caa-4e22-887a-159bf434e228">Yes</ix:nonNumeric> </span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#253;</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#168;</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, or a smaller reporting company. See the definitions of &#8220;large accelerated filer,&#8221; &#8220;accelerated filer&#8221; and &#8220;smaller reporting company&#8221; in Rule&#160;12b-2 of the Exchange Act.:</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:96.783%"><tr><td style="width:1.0%"></td><td style="width:19.292%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.582%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:40.591%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.555%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:24.126%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.670%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:3.284%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Large&#160;accelerated&#160;filer</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accelerated&#160;filer</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#9744;</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityFilerCategory" format="ixt-sec:entityfilercategoryen" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YTNmZWJhMTczMTVjNGIzYWE1MDMyMzc3YzA3YTBiMDgvdGFibGVyYW5nZTphM2ZlYmExNzMxNWM0YjNhYTUwMzIzNzdjMDdhMGIwOF8xLTAtMS0xLTQ4NTAy_47df378d-e5ab-4eac-95eb-d0cbc9a90a84">Non-accelerated filer</ix:nonNumeric></span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#253;</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Smaller&#160;reporting&#160;company</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntitySmallBusiness" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YTNmZWJhMTczMTVjNGIzYWE1MDMyMzc3YzA3YTBiMDgvdGFibGVyYW5nZTphM2ZlYmExNzMxNWM0YjNhYTUwMzIzNzdjMDdhMGIwOF8xLTYtMS0xLTQ4NTAy_21137756-6e29-4a61-8a44-ac75622b6ce5">&#9746;</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Emerging growth company</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityEmergingGrowthCompany" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YTNmZWJhMTczMTVjNGIzYWE1MDMyMzc3YzA3YTBiMDgvdGFibGVyYW5nZTphM2ZlYmExNzMxNWM0YjNhYTUwMzIzNzdjMDdhMGIwOF8yLTYtMS0xLTQ4NTAy_dc9a10f1-9d21-4a10-9f1f-7278d50a6947">&#9744;</ix:nonNumeric></span></td></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.&#160;</span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">o</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#160;</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Indicate by check mark whether the registrant is a shell company (as defined in Rule&#160;12b-2 of the Exchange Act).&#160;&#160;&#160;&#160;Yes&#160;&#160;<ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="dei:EntityShellCompany" format="ixt-sec:boolballotbox" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTUx_f785a34e-8be4-40d3-a88c-2d51262e4229">&#9744;</ix:nonNumeric>&#160;&#160;&#160;&#160;No&#160;&#160;</span><span style="color:#000000;font-family:'Wingdings',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#253;</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The number of shares outstanding for each of the registrant&#8217;s classes of common stock, as of the latest practicable date:</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Common Stock, $.01 par value &#8212; <ix:nonFraction unitRef="shares" contextRef="i46f3fa4db1224bdcaea94369c6d96157_I20230604" decimals="INF" name="dei:EntityCommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTEz_33e86517-bec1-4bb2-b744-4072a7127508">16,210,985</ix:nonFraction> shares as of June 4, 2023.</span></div><div style="margin-top:9pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr style="height:3pt"><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr style="height:3pt"><td colspan="3" style="border-top:2pt solid #000000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:17pt;margin-top:12pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><span><br/></span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_10"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:underline">TABLE OF CONTENTS</span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:4.024%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:87.479%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:5.197%"></td><td style="width:0.1%"></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_13">Part I. Financial Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_13">3</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_16">Item 1. Financial Statements</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_16">3</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">Unaudited condensed consolidated balance sheets - </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">April </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">0</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">, 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">, January 31, 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19"> and </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">April </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">0</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">, 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">2</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_19">3</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">Unaudited condensed consolidated statements of </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">operations</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22"> - Three months ended </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">April </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">0</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">, 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22"> and 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">2</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22"> </a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_22">5</a></span></div></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">Unaudited condensed consolidated statements of comprehensive </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">l</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">oss</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28"> - Three months ended </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">April </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">0</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">, 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28"> and 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">2</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_28">6</a></span></div></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">Unaudited condensed consolidated statements of cash flows - </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">Three </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">months ended </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">April </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">0</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">, 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34"> and 202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">2</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_34">7</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">Unaudited condensed consolidated statements of changes in stockholders' equity - Three </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">months ended </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">April </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">3</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">0</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">, </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">2023 and </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">202</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">2</a></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_37">8</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_40">Notes to unaudited condensed consolidated financial statements - </a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_40">April 30</a><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_40">, 202</a>3</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_40">9</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_91">Item&#160;2. Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_91">17</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_109">Item&#160;3. Quantitative and Qualitative Disclosures about Market Risk</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_109">19</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_112">Item&#160;4. Controls and Procedures</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_112">19</a></span></div></td></tr><tr><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_115">Part II. Other Information</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_115">21</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_118">Item&#160;1. Legal Proceedings</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_118">21</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_121">Item&#160;1A. Risk Factors</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_121">21</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_124">Item&#160;2. Unregistered Sales of Equity Securities and Use of Proceeds</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_124">21</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">Item&#160;3. Defaults Upon Senior Securities </span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_127">21</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">Item&#160;4. Mine Safety Disclosures </span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_130">21</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">Item&#160;5. Other Information </span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_133">21</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_136">Item&#160;6. Exhibits</a></span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><div style="text-align:right"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="#i9f22950a62b445c58886781e487ff8d6_136">21</a></span></div></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EX-31.1</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EX-31.2</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EX-32.1</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EX-101 INSTANCE DOCUMENT</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EX-101 SCHEMA DOCUMENT</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EX-101 CALCULATION LINKBASE DOCUMENT</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EX-101 LABELS LINKBASE DOCUMENT</span></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt 2px 19pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EX-101 PRESENTATION LINKBASE DOCUMENT</span></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-bottom:17pt;margin-top:17pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">2</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_13"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART I. Financial Information</span></div><div id="i9f22950a62b445c58886781e487ff8d6_16"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;1. Financial Statements </span></div><div><span><br/></span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_19"></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Virco Mfg. Corporation</span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Unaudited Condensed Consolidated Balance Sheets</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:56.524%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.536%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.536%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.538%"></td><td style="width:0.1%"></td></tr><tr style="height:12pt"><td colspan="3" rowspan="2" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1/31/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr style="height:14pt"><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(In thousands)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:Cash" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNS0xLTEtMS00ODUwMg_f1c624c4-379b-43ec-bb25-27c2f5aec02e">625</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:Cash" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNS0zLTEtMS00ODUwMg_adbcc9be-6418-4723-8eab-819df406252c">1,057</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:Cash" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNS01LTEtMS00ODUwMg_08f87e39-8f50-4848-8dbf-a4dfbe568da9">539</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade accounts receivables, net </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNi0xLTEtMS00ODUwMg_6b69e340-d84d-49aa-8e11-3d10c7ebdd80">15,524</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNi0zLTEtMS00ODUwMg_6994753b-f0ec-4ece-be50-eb57b2ca96de">18,435</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:AccountsReceivableNetCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNi01LTEtMS00ODUwMg_b10cb881-b501-4983-a8ab-3590be4696be">13,326</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other receivables</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OtherReceivablesNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNy0xLTEtMS00ODUwMg_4be96dea-6e08-4a65-a242-56b5f0f341b4">35</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:OtherReceivablesNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNy0zLTEtMS00ODUwMg_f80c7fef-867b-4c38-b4d1-4cfa020568ca">68</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:OtherReceivablesNetCurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNy01LTEtMS00ODUwMg_b82c7432-5bcf-4b30-ad78-c86bcba00920">85</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax receivable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:IncomeTaxesReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOC0xLTEtMS00ODUwMg_021996e9-6432-4568-881f-95430f394941">321</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:IncomeTaxesReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOC0zLTEtMS00ODUwMg_ed953c89-54f9-4d63-bfca-ca00791af196">19</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:IncomeTaxesReceivable" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOC01LTEtMS00ODUwMg_0ed0aaf9-d693-437f-923e-f96339757062">135</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOS0xLTEtMS00ODUwMg_eedff725-7afc-4613-8cc9-43adc21cebef">85,640</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOS0zLTEtMS00ODUwMg_1224e4e6-ddce-464b-ac17-24a113db1e21">67,406</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOS01LTEtMS00ODUwMg_0e67dcf9-ebdc-40fe-8b2c-7ff34363c638">66,297</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTAtMS0xLTEtNDg1MDI_46565b6b-4988-4b0f-a0bd-a66e8191a71f">2,698</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTAtMy0xLTEtNDg1MDI_25da30c1-9c5d-4de0-9d10-6591ebf4b54c">2,083</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTAtNS0xLTEtNDg1MDI_1cc80fc4-f8cc-47c1-9899-a88b86018abc">2,156</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current assets</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTEtMS0xLTEtNDg1MDI_861b9317-bcb3-4395-b3d3-ad8d6ca75b50">104,843</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTEtMy0xLTEtNDg1MDI_2c854281-0875-4f14-907f-e12ff734b2f5">89,068</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:AssetsCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTEtNS0xLTEtNDg1MDI_8538b6a1-be2d-475d-9b48-503e5b36d357">82,538</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current assets</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property, plant and equipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:Land" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTQtMS0xLTEtNDg1MDI_92efd807-785b-4b8e-b2df-92304a94d27d">3,731</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:Land" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTQtMy0xLTEtNDg1MDI_2b7afb91-0e29-4752-8209-99d60dffa74e">3,731</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:Land" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTQtNS0xLTEtNDg1MDI_29cd6254-ab94-4c85-9816-e395d3571a11">3,731</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Land improvements</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LandImprovements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTUtMS0xLTEtNDg1MDI_1e8fbbfc-b602-4f2b-bb46-e2c0ba036db0">686</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LandImprovements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTUtMy0xLTEtNDg1MDI_0a5c0ae0-79fb-4398-848d-868cb47a1a58">686</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LandImprovements" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTUtNS0xLTEtNDg1MDI_54ae9d8a-07b5-4259-827c-b8311b23c297">653</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Buildings and building improvements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:BuildingsAndImprovementsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTYtMS0xLTEtNDg1MDI_2cd50b7e-eba6-4797-9182-d78322817c65">51,391</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:BuildingsAndImprovementsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTYtMy0xLTEtNDg1MDI_f9e56d4a-423f-44f1-a52e-f90ad0e09312">51,310</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:BuildingsAndImprovementsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTYtNS0xLTEtNDg1MDI_347bb8d6-3fe9-4135-ab08-ec1d716420ea">51,375</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Machinery and equipment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:MachineryAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTctMS0xLTEtNDg1MDI_30d7d334-8552-4078-bda7-d8b53c657de4">114,655</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:MachineryAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTctMy0xLTEtNDg1MDI_16a5e87e-ef81-49f6-9a4f-6013e85c0995">113,662</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:MachineryAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTctNS0xLTEtNDg1MDI_9a57a352-f58c-4977-8ebe-ca6dda5f7b77">113,901</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LeaseholdImprovementsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTgtMS0xLTEtNDg1MDI_a7ad7c28-d6f9-431e-8028-a3d7159dc17b">983</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LeaseholdImprovementsGross" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTgtMy0xLTEtNDg1MDI_672411ac-8d80-43ad-b3ea-751e12b481b0">983</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LeaseholdImprovementsGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTgtNS0xLTEtNDg1MDI_db56c33c-d30e-41dc-b840-2684b17bfadc">1,009</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total property, plant and equipment</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTktMS0xLTEtNDg1MDI_1f0b9ea0-466f-4938-b652-443c01e36f59">171,446</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTktMy0xLTEtNDg1MDI_41655bba-ec2a-4a40-b591-ac86541220c6">170,372</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentGross" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTktNS0xLTEtNDg1MDI_00d27056-2be1-4a67-bf9e-8d44384a0b61">170,669</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less accumulated depreciation and amortization</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjAtMS0xLTEtNDg1MDI_9898a1bf-7d67-48b6-9764-2adab8d2a9d3">136,779</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjAtMy0xLTEtNDg1MDI_935f6885-f2a7-4e73-a609-b10094d8c53d">135,810</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjAtNS0xLTEtNDg1MDI_456ccb56-e1b1-44d0-be20-ced22939cae0">135,844</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net property, plant and equipment</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjEtMS0xLTEtNDg1MDI_155bdd8a-de5e-4f9e-94b4-6bcd128f538f">34,667</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjEtMy0xLTEtNDg1MDI_2c0560d3-1ff6-4476-8db8-45f5526d8871">34,562</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:PropertyPlantAndEquipmentNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjEtNS0xLTEtNDg1MDI_de0eaad3-3e0e-45ab-861a-45a4505a8842">34,825</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease right-of-use assets</span></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjItMS0xLTEtNDg1MDI_81a9c6a9-cb7d-4616-b7d0-f2b841561d4c">9,326</ix:nonFraction>&#160;</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjItMy0xLTEtNDg1MDI_217c5699-2791-4077-a193-0fa21a8a828e">10,120</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:OperatingLeaseRightOfUseAsset" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjItNS0xLTEtNDg1MDI_784a9aa8-fbeb-4384-a5bc-6033cfb3a022">12,892</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferred tax assets, net</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjMtMS0xLTEtNDg1MDI_5e16ef62-450c-4e82-b267-06ee22a5e57c">8,249</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjMtMy0xLTEtNDg1MDI_fdf803d3-2541-4f02-b7ff-e1e6bb398ee8">7,800</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:DeferredIncomeTaxAssetsNet" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjMtNS0xLTEtNDg1MDI_0aad399f-9f8d-445f-ba19-140f0fc7e0dc">769</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other assets, net</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjQtMS0xLTEtNDg1MDI_43d48910-8901-404d-a2bc-d86cf9a12505">8,848</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjQtMy0xLTEtNDg1MDI_bb992b84-39a0-4ebb-8582-c516b6bc66b5">8,576</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:OtherAssetsNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjQtNS0xLTEtNDg1MDI_fc61980d-ce1d-4906-8fc2-f784ce3954df">8,383</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjUtMS0xLTEtNDg1MDI_72845cfc-6cd2-4074-a824-cf2bf5607aaa">165,933</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjUtMy0xLTEtNDg1MDI_595af7f0-dfcf-481b-b0a3-a203877bc4f8">150,126</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:Assets" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjUtNS0xLTEtNDg1MDI_d0d52731-fb94-4693-a37d-ff04446d6082">139,407</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:4pt"><span><br/></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes to unaudited condensed consolidated financial statements.</span></div><div style="margin-top:14pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Virco Mfg. Corporation</span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Unaudited Condensed Consolidated Balance Sheets</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:56.524%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.536%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.536%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.538%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1/31/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(In thousands, except share and par value data)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accounts payable</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNS0xLTEtMS00ODUwMg_d8f3ced6-21ab-4111-9167-368d3a5a4823">23,628</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNS0zLTEtMS00ODUwMg_94ea8d74-a6ea-4494-95c2-1508dab7a76e">19,448</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:AccountsPayableCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNS01LTEtMS00ODUwMg_22035ea0-ff6e-47e1-8aa1-f06bb5848bc7">19,437</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued compensation and employee benefits</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNi0xLTEtMS00ODUwMg_2acc180b-da43-4619-9bda-8cf3a042f08f">9,416</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNi0zLTEtMS00ODUwMg_a1972fb8-dc23-4c09-ac04-f25c30019855">9,554</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNi01LTEtMS00ODUwMg_cf4103ab-5426-40a5-b14d-38a892ef29dd">5,055</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of long-term debt</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNy0xLTEtMS00ODUwMg_e2f01a33-4954-43bb-b685-dc71b03e9fad">20,362</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNy0zLTEtMS00ODUwMg_01ae65ef-4278-4135-8f33-1a637b5ef880">7,360</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNy01LTEtMS00ODUwMg_cfbc8119-954c-4c0b-8742-06d9bea20276">18,905</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion operating lease liability</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOC0xLTEtMS00ODUwMg_10f882ce-d63a-420b-816e-d825d8fa72f2"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOC0xLTEtMS00ODUwMg_74e876d5-c723-4a5f-a231-20a447f5be89">5,271</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOC0zLTEtMS00ODUwMg_89c2a3ab-5c7a-46d7-af65-6d820f3fd7f0">5,082</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOC01LTEtMS00ODUwMg_50b4e3f2-9a3b-4ed2-9a7e-edc541e3aea6">4,769</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other accrued liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOS0xLTEtMS00ODUwMg_491d648c-e489-4a4e-bd05-8b917b575100">7,868</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOS0zLTEtMS00ODUwMg_f3ca3e00-6ade-4926-90ae-8212f5c59e99">7,081</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOS01LTEtMS00ODUwMg_5fa2f06b-29a4-4e43-84d1-e97f8c51ea7d">6,049</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total current liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTAtMS0xLTEtNDg1MDI_be3b9524-3b11-4d4e-87ac-c39bdc22bf26">66,545</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTAtMy0xLTEtNDg1MDI_58582e15-cd5c-434a-8598-0d254670c509">48,525</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LiabilitiesCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTAtNS0xLTEtNDg1MDI_3aae8fcb-5505-4455-ae32-3fb223e8e151">54,215</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current liabilities</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued self-insurance retention</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:SelfInsuranceReserveNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTItMS0xLTEtNDg1MDI_630eca59-8621-46c0-b203-c3d04ebc2e9c">1,251</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:SelfInsuranceReserveNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTItMy0xLTEtNDg1MDI_cc681cec-75ba-41f7-8736-3990a0516dc0">1,050</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:SelfInsuranceReserveNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTItNS0xLTEtNDg1MDI_a5b096af-0b1a-42cb-b3dc-57a96572a07e">1,533</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued pension expenses</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTMtMS0xLTEtNDg1MDI_1712d914-4a7b-4231-8c8b-a400578f3dc6">10,802</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTMtMy0xLTEtNDg1MDI_683b21b1-6023-48c8-9448-4655138c96c4">10,676</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTMtNS0xLTEtNDg1MDI_daf347f4-6d36-4b05-837c-1b0f32c58c94">15,332</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax payable</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:AccruedIncomeTaxesNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTQtMS0xLTEtNDg1MDI_98e83371-0ac4-4950-8ceb-9835ad3e6fb9">85</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:AccruedIncomeTaxesNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTQtMy0xLTEtNDg1MDI_820e94de-e0cc-43f0-a620-b7cf5f6d3a3d">79</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:AccruedIncomeTaxesNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTQtNS0xLTEtNDg1MDI_658c175d-9068-43ea-9c39-25260ddd0b90">76</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term debt, less current portion</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTUtMS0xLTEtNDg1MDI_874b910f-a8a8-449d-ba40-03a00d8d52a3">14,323</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTUtMy0xLTEtNDg1MDI_913641db-1da2-44ce-99fb-71a65b00e9c0">14,384</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTUtNS0xLTEtNDg1MDI_00d67843-10b7-47e7-b483-390169c7f41e">14,564</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease liability, less current portion</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTYtMS0xLTEtNDg1MDI_3b67af16-ee39-434a-a5e1-21c4004a7fad">5,648</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTYtMy0xLTEtNDg1MDI_22e9f48a-9214-429b-b30c-2e7037b84dd4">6,796</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTYtNS0xLTEtNDg1MDI_0c15e223-8fa1-4f0f-aa4c-c3eb306a00e1">10,297</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other long-term liabilities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTctMS0xLTEtNDg1MDI_eb1c65b0-6302-484f-b9ed-603c609f5ded">557</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTctMy0xLTEtNDg1MDI_62e678b8-e9aa-42ef-951c-f61122c70fc9">555</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:OtherAccruedLiabilitiesNoncurrent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTctNS0xLTEtNDg1MDI_04f103b9-db87-4c14-ae01-1baabe63a680">640</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total non-current liabilities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTgtMS0xLTEtNDg1MDI_75bd7595-05c7-481b-9513-f9b0bffe647a">32,666</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTgtMy0xLTEtNDg1MDI_a20af8eb-4f10-4655-af47-9a5bb277440b">33,540</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LiabilitiesNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTgtNS0xLTEtNDg1MDI_964a1bb7-050b-4066-b108-9312f065f419">42,442</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commitments and contingencies (Notes 6, 7 and 13)</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTktMS0xLTEtNDg1MDI_e1e496ae-a9e6-484c-ba5e-1b54aecdb789"></ix:nonFraction></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTktMy0xLTEtNDg1MDI_d249e699-52ef-4f1f-85b4-f51bd7cfbd19"></ix:nonFraction></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" xsi:nil="true" name="us-gaap:CommitmentsAndContingencies" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTktNS0xLTEtNDg1MDI_81ea4e42-7549-4e6f-9b3d-bf9e5315c2f7"></ix:nonFraction></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stockholders&#8217; equity</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Preferred stock:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Authorized <ix:nonFraction unitRef="shares" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8xNQ_03dc715a-1062-47e3-b042-74a2c166c1e5"><ix:nonFraction unitRef="shares" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8xNQ_31984aed-65e2-4074-bf76-ff1939e1ac60"><ix:nonFraction unitRef="shares" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="us-gaap:PreferredStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8xNQ_5fe8ec90-d95a-46c0-8bdd-65e5f495f23e">3,000,000</ix:nonFraction></ix:nonFraction></ix:nonFraction> shares, $<ix:nonFraction unitRef="usdPerShare" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8yNg_24e1343f-e8ac-4fa0-b4d7-9584e1fae2da"><ix:nonFraction unitRef="usdPerShare" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8yNg_3ab7c09d-3106-4a4a-8fc6-9bc1bd8bc7cf"><ix:nonFraction unitRef="usdPerShare" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="INF" name="us-gaap:PreferredStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8yNg_d065f0bf-ea11-4948-8c80-aaf286187c7c">0.01</ix:nonFraction></ix:nonFraction></ix:nonFraction> par value; <ix:nonFraction unitRef="shares" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_1fb40d01-c745-4442-9a8f-554789b4c91c"><ix:nonFraction unitRef="shares" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_292739fc-84f3-40ad-84e7-4095812ce50e"><ix:nonFraction unitRef="shares" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="us-gaap:PreferredStockSharesIssued" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_7bc57d0c-471c-4d1f-b07b-3e70d4b1f352"><ix:nonFraction unitRef="shares" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="INF" name="us-gaap:PreferredStockSharesOutstanding" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_8c6b389c-4654-4602-8f0e-942a188e0a17"><ix:nonFraction unitRef="shares" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="INF" name="us-gaap:PreferredStockSharesIssued" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_a66c3edd-502f-4086-bbca-e4d2be54d7e5"><ix:nonFraction unitRef="shares" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="INF" name="us-gaap:PreferredStockSharesIssued" format="ixt:fixed-zero" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_da4063d4-d064-417a-b620-007b94475f3f">none</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> issued or outstanding</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMS0xLTEtNDg1MDI_734b1e7c-3515-4470-8280-c407ca50cd65">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMy0xLTEtNDg1MDI_9eb930ec-1077-4403-a960-01f0f9dece69">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:PreferredStockValue" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItNS0xLTEtNDg1MDI_dea807bd-f51d-4cb6-8f71-ceff95e40652">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Common stock:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Authorized <ix:nonFraction unitRef="shares" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8xNQ_15e46aad-1b3a-4b9a-ae05-49f98c6596f2"><ix:nonFraction unitRef="shares" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8xNQ_16b520d3-ba92-47cb-9bc8-26be6f587f47"><ix:nonFraction unitRef="shares" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="INF" name="us-gaap:CommonStockSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8xNQ_52efdf6b-e3a9-4cf4-bb08-2f6706bfd05d">25,000,000</ix:nonFraction></ix:nonFraction></ix:nonFraction> shares, $<ix:nonFraction unitRef="usdPerShare" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8yNg_09fe1f2e-7c34-450e-9c0f-3db5bb6c1cfb"><ix:nonFraction unitRef="usdPerShare" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8yNg_79a21cad-3294-4c94-8b07-2a45d01bb75d"><ix:nonFraction unitRef="usdPerShare" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="INF" name="us-gaap:CommonStockParOrStatedValuePerShare" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8yNg_e6f96b7e-281e-47ee-99f5-e2871c1eeec7">0.01</ix:nonFraction></ix:nonFraction></ix:nonFraction> par value; issued and outstanding <ix:nonFraction unitRef="shares" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl82Mw_16fd244d-7db3-401c-aead-af0bbc10b4d9"><ix:nonFraction unitRef="shares" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl82Mw_60d37e6c-d5aa-4f23-bfec-cfacc3ababa3"><ix:nonFraction unitRef="shares" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl82Mw_6153605a-ce88-4fc6-9bce-d9fb43b3494b"><ix:nonFraction unitRef="shares" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl82Mw_b6b1134c-469b-456a-a43f-1561e344105f">16,210,985</ix:nonFraction></ix:nonFraction></ix:nonFraction></ix:nonFraction> shares at 4/30/2023  and 1/31/2023, and <ix:nonFraction unitRef="shares" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl85Mg_41760b3b-653f-4986-94f4-e90530d6484e"><ix:nonFraction unitRef="shares" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="INF" name="us-gaap:CommonStockSharesIssued" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl85Mg_496c6ff2-969e-4e62-aed2-a8f166c1e12b">16,102,023</ix:nonFraction></ix:nonFraction> at 4/30/2022</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMS0xLTEtNDg1MDI_06d4cfea-0121-4fa7-8c4f-2c158dc5cea2">162</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMy0xLTEtNDg1MDI_92a1cbb3-33ca-4236-8261-9af7dcf551f4">162</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:CommonStockValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtNS0xLTEtNDg1MDI_38395b81-1ecb-47e0-a8ff-75181bbbacbe">161</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additional paid-in capital</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:AdditionalPaidInCapital" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjUtMS0xLTEtNDg1MDI_28b94dfe-a353-4528-840d-d94cad40af45">120,993</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:AdditionalPaidInCapital" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjUtMy0xLTEtNDg1MDI_d132f8a7-15ab-4ccc-b3f3-0f12d412430e">120,890</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:AdditionalPaidInCapital" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjUtNS0xLTEtNDg1MDI_e2b0904d-b15a-4c38-bd60-c37c01b26909">120,745</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated deficit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjYtMS0xLTEtNDg1MDI_4bd72f6c-5f35-4def-a35a-cf0d7a252c4c">52,073</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjYtMy0xLTEtNDg1MDI_2b4e662b-04cf-49b4-a64f-3805c3ddbbdb">50,631</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" sign="-" name="us-gaap:RetainedEarningsAccumulatedDeficit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjYtNS0xLTEtNDg1MDI_16b8e20f-8648-4256-bcc6-95b39933749e">72,262</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accumulated other comprehensive loss</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjctMS0xLTEtNDg1MDI_925bfa95-96f2-4aec-b34e-4c580bb822fb">2,360</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjctMy0xLTEtNDg1MDI_7130559d-591a-420f-89c1-054293b9f573">2,360</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" sign="-" name="us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjctNS0xLTEtNDg1MDI_5f74d16d-2777-49c6-b10b-2fc7a82758be">5,894</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stockholders&#8217; equity</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjgtMS0xLTEtNDg1MDI_3d2fc971-e185-4811-9126-e6602229b4bd">66,722</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjgtMy0xLTEtNDg1MDI_ad5f9ae1-6a92-4ee1-84ca-42dfe93adebf">68,061</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjgtNS0xLTEtNDg1MDI_a6737cde-49ab-4ca4-8409-d4512f56c188">42,750</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total liabilities and stockholders&#8217; equity</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjktMS0xLTEtNDg1MDI_ff9b06c2-3b3d-4bd8-b915-28bf20aa1379">165,933</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjktMy0xLTEtNDg1MDI_d376ffd0-8fcc-4e45-a451-e9e850453a43">150,126</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LiabilitiesAndStockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjktNS0xLTEtNDg1MDI_12602d61-b4b1-419b-a38e-b8be3a2ae079">139,407</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:4pt"><span><br/></span></div><div style="margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes to unaudited condensed consolidated financial statements.</span></div><div style="text-align:center"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_22"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Virco Mfg. Corporation</span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Unaudited Condensed Consolidated Statements of Operations</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%">&#160;</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:65.322%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.322%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.323%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(In thousands, except per share data)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMy0xLTEtMS00ODUwMg_13b36fff-3a2e-4ef9-98b2-b71f0058814d">34,943</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMy0zLTEtMS00ODUwMg_53c46271-a67a-4cca-ad61-fc2fa2f3900d">32,084</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs of goods sold</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNC0xLTEtMS00ODUwMg_1c9816a4-f331-4dad-b7d9-555ac26478cc">21,741</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:CostOfGoodsAndServicesSold" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNC0zLTEtMS00ODUwMg_027da640-7307-4670-8c12-8c50063ab2ff">22,377</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross profit</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNS0xLTEtMS00ODUwMg_45f27c58-328f-4218-be13-63f36fdf890a">13,202</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:GrossProfit" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNS0zLTEtMS00ODUwMg_07676624-bf5c-44db-9c34-0ed6eee212e4">9,707</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNi0xLTEtMS00ODUwMg_04c37db0-13d8-49cc-ad72-5315f3bf6024">14,514</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:SellingGeneralAndAdministrativeExpense" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNi0zLTEtMS00ODUwMg_8d3cdf0e-d41c-4ed4-8397-081f9ea4e398">14,451</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating loss</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfOS0xLTEtMS00ODUwMg_e5fb76a7-ad0e-4f08-b686-c07f60c1320c">1,312</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:OperatingIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfOS0zLTEtMS00ODUwMg_46b1ffa4-769e-42aa-bc29-82be163963fa">4,744</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unrealized gain on investment in trust account</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:UnrealizedGainLossOnInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTAtMS0xLTEtNDg1MDI_9cbdc110-d310-4e6a-8ade-a31ddc5f0c3e">299</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:UnrealizedGainLossOnInvestments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTAtMy0xLTEtNDg1MDI_a4717eac-bb40-4df1-9808-8e9d95d54cec">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pension expense</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTEtMS0xLTEtNDg1MDI_b8b9291e-4957-4de4-9137-32022842dd7c">161</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTEtMy0xLTEtNDg1MDI_cb1dc227-e4e4-4914-b7b4-c5b677b158a8">195</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTItMS0xLTEtNDg1MDI_2c370ac5-2728-4c23-a63b-ea5c5e7a4c81">712</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:InterestExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTItMy0xLTEtNDg1MDI_ec95a769-5b3c-4f35-a816-d994407b7b90">427</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Loss before income taxes</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTMtMS0xLTEtNDg1MDI_0be0d232-341d-4e0d-bde1-30f66ba1abe1">1,886</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTMtMy0xLTEtNDg1MDI_d906f11a-00b4-4273-9c95-aecb4b95a13f">5,366</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income tax benefit</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTQtMS0xLTEtNDg1MDI_afbfdbeb-81fc-4ff0-940e-f8302a0e723f">444</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:IncomeTaxExpenseBenefit" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTQtMy0xLTEtNDg1MDI_89c7f003-c399-4635-9ef9-e52e2d4c3241">282</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTUtMS0xLTEtNDg1MDI_d4157ad9-e220-431b-b46f-b2715ef0e411">1,442</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTUtMy0xLTEtNDg1MDI_baec872c-f6a5-4419-8ab7-f95aa6f539d6">5,084</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr style="height:14pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss per common share:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="2" sign="-" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTktMS0xLTEtNDg1MDI_6815404d-f926-4b3b-93e9-a3c85583666b">0.09</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="2" sign="-" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTktMy0xLTEtNDg1MDI_ae3ae2fc-2d1d-4389-99a6-6673c9d51e71">0.32</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="2" sign="-" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjAtMS0xLTEtNDg1MDI_402a0100-3926-436d-9202-ebd7e5922982">0.09</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="2" sign="-" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjAtMy0xLTEtNDg1MDI_6b63bcea-5b30-4ab2-a22b-436b2402c9d0">0.32</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares of common stock outstanding:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjItMS0xLTEtNDg1MDI_079bd9b3-7dad-4415-8b9e-ffceb35c016f"><ix:nonFraction unitRef="shares" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjItMS0xLTEtNDg1MDI_a999b2d3-49f6-4cd0-a4fb-e1ec29868926">16,211</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjItMy0xLTEtNDg1MDI_c9493780-cb70-4121-90ab-02560ac117b9">16,033</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjMtMS0xLTEtNDg1MDI_beece7f8-413e-4139-86e4-e658da724829">16,211</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjMtMy0xLTEtNDg1MDI_4bbceffc-db93-4cfe-992b-8c9de88388fb">16,033</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes to unaudited condensed consolidated financial statements.</span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div><span><br/></span></div><div style="text-align:center"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_28"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Virco Mfg. Corporation</span></div><div style="margin-top:5pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Unaudited Condensed Consolidated Statements of Comprehensive Loss</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:65.223%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.370%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.372%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">(In thousands)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNC0xLTEtMS00ODUwMg_d4157ad9-e220-431b-b46f-b2715ef0e411">1,442</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNC0zLTEtMS00ODUwMg_baec872c-f6a5-4419-8ab7-f95aa6f539d6">5,084</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other comprehensive income:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Pension adjustments (net of tax expense of $<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNi0wLTEtMS00ODUwMi90ZXh0cmVnaW9uOmYxZjQzMzMwMWQ2YTQwN2RhZDA0MTFkODAwNDk2M2EwXzQ3_60d0ea29-e895-4134-b35a-3db83ccfb562">0</ix:nonFraction>  and $<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNi0wLTEtMS00ODUwMi90ZXh0cmVnaW9uOmYxZjQzMzMwMWQ2YTQwN2RhZDA0MTFkODAwNDk2M2EwXzU1_f8166a67-d460-4c2a-8b71-413c5a13e6cf">0</ix:nonFraction> at April  30, 2023 and 2022, respectively)</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNi0xLTEtMS00ODUwMg_4621070a-5ff2-4041-8702-1c364f9db94b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNi0zLTEtMS00ODUwMg_ded0e29b-c15f-452e-9fb0-0654ac0b57e0">135</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net comprehensive loss</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNy0xLTEtMS00ODUwMg_b4cd4f5e-766e-4252-ac1c-e0dbdda01522">1,442</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:ComprehensiveIncomeNetOfTax" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNy0zLTEtMS00ODUwMg_43b142d5-0655-49eb-8bd1-bf0715f4e2a6">4,949</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:4pt"><span><br/></span></div><div style="margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes to unaudited condensed consolidated financial statements.</span></div><div><span><br/></span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">6</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_34"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Virco Mfg. Corporation</span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Unaudited Condensed Consolidated Statements of Cash Flows</span></div><div style="margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"><tr><td style="width:1.0%"></td><td style="width:64.822%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.544%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.568%"></td><td style="width:0.1%"></td></tr><tr style="height:12pt"><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three months ended</span></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">(In thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating activities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNC0xLTEtMS00ODUwMg_7eace05f-1882-46a0-aa0c-dc73e4b55f33">1,442</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNC0zLTEtMS00ODUwMg_b05c31e1-1118-493b-8fa5-e5726a6db0fa">5,084</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Adjustments to reconcile net loss to net cash used in operating activities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Depreciation and amortization</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNi0xLTEtMS00ODUwMg_0d17413f-54ce-4663-a5de-58a3413c710d">1,195</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:DepreciationDepletionAndAmortization" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNi0zLTEtMS00ODUwMg_6655ba79-29e9-4435-b24f-52575f726ed4">1,129</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Non-cash lease benefits</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="virc:NoncashRentExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNy0xLTEtMS00ODUwMg_da1bf429-a844-45fe-8628-c1536e39222b">165</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="virc:NoncashRentExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNy0zLTEtMS00ODUwMg_0d7e91c6-89fd-4812-81bf-c6a48a47f8c6">126</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Provision for doubtful accounts</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfOC0xLTEtMS00ODUwMg_e2cdf39f-ad45-4c35-9811-0b038e80f4e1">15</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:ProvisionForDoubtfulAccounts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfOC0zLTEtMS00ODUwMg_f4f9787d-8f89-4a39-8100-4f45c29724c8">15</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of debt issuance costs </span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:AmortizationOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfOS0xLTEtMS00ODUwMg_90199f80-db18-432c-8b19-cfe0cfa56bb9">26</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:AmortizationOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfOS0zLTEtMS00ODUwMg_eddf5253-3110-4a0a-9021-63b71220b335">43</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Deferred income taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxesAndTaxCredits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTAtMS0xLTEtNDg1MDI_f4a8698e-ef32-4da6-b703-0895bf31afc8">448</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:DeferredIncomeTaxesAndTaxCredits" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTAtMy0xLTEtNDg1MDI_8d631fa3-9132-40f2-ba18-1d3445bdc12e">370</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock-based compensation</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTEtMS0xLTEtNDg1MDI_bfdac4d5-9ed4-44d3-b2cb-75f5a31324ce">103</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:ShareBasedCompensation" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTEtMy0xLTEtNDg1MDI_b25a555b-33d2-4c42-a4b4-8df3dd4ed275">253</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Amortization of net actuarial loss for pension plans</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTMtMS0xLTEtNDg1MDI_9f939021-9979-42d5-8493-2e0ed4b91b3b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTMtMy0xLTEtNDg1MDI_6df4f161-9645-4a05-9779-171e5b9e3e6c">135</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Non-cash unrealized gain on investment</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:UnrealizedGainLossOnInvestments" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTQtMS0xLTEtNDg1MDI_bcd00f86-6d1c-499b-9fb9-59311755bdcf">299</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:UnrealizedGainLossOnInvestments" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTQtMy0xLTEtNDg1MDI_d375fbb3-ab58-48c9-8500-45dad9a9f151">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Changes in operating assets and liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Trade accounts receivable</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTctMS0xLTEtNDg1MDI_c6c76715-c093-42b0-8bc7-7fca52e7749b">2,896</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsReceivable" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTctMy0xLTEtNDg1MDI_57153e5b-16f0-4138-8b0f-bd5a3ba62192">4,428</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Other receivables</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherReceivables" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTgtMS0xLTEtNDg1MDI_c7d0feba-cd8e-47ce-b2e5-97744a778adc">33</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInOtherReceivables" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTgtMy0xLTEtNDg1MDI_421f7a25-455b-40c3-a869-e75934cf7b61">33</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Inventories</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTktMS0xLTEtNDg1MDI_ae96c86e-45c7-4688-aff0-748417e19f63">18,234</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:IncreaseDecreaseInInventories" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTktMy0xLTEtNDg1MDI_3824ad4e-ad4c-43ec-8811-b5e390fc902e">18,924</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Income taxes</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInIncomeTaxes" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjAtMS0xLTEtNDg1MDI_00d352d5-ad19-4b8e-b88a-b6e4f7e27dbc">296</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:IncreaseDecreaseInIncomeTaxes" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjAtMy0xLTEtNDg1MDI_3fe90aec-ef41-4687-a566-c0063199b1ff">22</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjEtMS0xLTEtNDg1MDI_0e6795a0-c3e8-48f4-b08e-e309500fc404">490</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjEtMy0xLTEtNDg1MDI_a32c22d8-ba35-4382-a5c9-400c9fe1ab2f">180</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Accounts payable and accrued liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjItMS0xLTEtNDg1MDI_50da2357-f9a8-4ca4-8a02-b6cc10cfd3d1">5,391</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjItMy0xLTEtNDg1MDI_70c999d9-fa1b-4f3c-9e99-182d26979ec2">340</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash used in operating activities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjMtMS0xLTEtNDg1MDI_5eff4aed-9e49-4cbd-848a-448c824401b4">11,715</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjMtMy0xLTEtNDg1MDI_e5a794ed-5e0e-4f99-820a-c7cb08bb2c19">18,966</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Investing activities:</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Capital expenditures</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjUtMS0xLTEtNDg1MDI_2e043e25-ec05-470c-a44e-b59ef7e1c363">1,533</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjUtMy0xLTEtNDg1MDI_22550549-d52f-43e5-8d7f-376bb793ffd4">609</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash used in investing activities</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjktMS0xLTEtNDg1MDI_19866ba0-e666-4a0c-833e-047d35335c74">1,533</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjktMy0xLTEtNDg1MDI_052db150-ce36-4a99-ae4b-b2d2eeb620ef">609</ix:nonFraction>)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Financing activities:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Borrowing from long-term debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzEtMS0xLTEtNDg1MDI_cbe154ae-6361-4b08-8cb8-8c4623eeac05">15,241</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:ProceedsFromIssuanceOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzEtMy0xLTEtNDg1MDI_0c035c82-e9e3-4f7b-9350-b33d103d3034">19,759</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Repayment of long-term debt</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzItMS0xLTEtNDg1MDI_70b35957-ced8-4443-895d-2614f460c456">2,300</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:RepaymentsOfLongTermDebt" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzItMy0xLTEtNDg1MDI_dfa8fb9e-736a-4d21-80d2-48b06c90f393">804</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Payment on deferred financing costs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzMtMS0xLTEtNDg1MDI_5d2bc3ba-6d5b-4e9d-b274-07f7b22f5eb5">125</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:PaymentsOfFinancingCosts" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzMtMy0xLTEtNDg1MDI_325a8740-b4ed-44c3-a106-92a39c4478f1">200</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net cash provided by financing activities</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzUtMS0xLTEtNDg1MDI_a00d906c-c5de-4f94-a971-999e3b5e2cf8">12,816</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzUtMy0xLTEtNDg1MDI_f01b49f8-7b5e-40d7-b416-85af68db6e76">18,755</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net decrease in cash</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzctMS0xLTEtNDg1MDI_48ce79d8-5e50-40a2-8788-cc6275aa9cb0">432</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzctMy0xLTEtNDg1MDI_36c17905-39e9-4ce7-8551-e48a8dc128c2">820</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash at beginning of period</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzgtMS0xLTEtNDg1MDI_4d8aa33c-9c93-4787-ac60-b9a4acb92802">1,057</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i35924208d3d746c491b0ea2b2e4d7e29_I20220131" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzgtMy0xLTEtNDg1MDI_05d29969-bd3b-431c-8fb0-49c9359fe3d6">1,359</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash at end of period</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzktMS0xLTEtNDg1MDI_eaf15324-97a0-43b6-a6c3-c3766bbe6b6d">625</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzktMy0xLTEtNDg1MDI_979094fc-ec84-4947-abc0-0029b6d088e3">539</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:4pt"><span><br/></span></div><div style="margin-top:4pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes to unaudited condensed consolidated financial statements.</span></div><div style="margin-top:9pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">7</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_37"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Virco Mfg. Corporation</span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Unaudited Consolidated Statements of Changes in Stockholders' Equity</span></div><div style="margin-top:9pt;text-align:center"><span><br/></span></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.976%"><tr><td style="width:1.0%"></td><td style="width:21.942%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.538%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.046%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.981%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.910%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.981%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.535%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.981%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.125%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.833%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.114%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.538%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.576%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three-Month Period Ended April 30, 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Common Stock</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">In thousands, except share data</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Additional Paid-in Capital</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated Deficit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated Other Comprehensive Loss</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total Stockholder's Equity</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at February 1, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i667c7d8bd763413abd796ad88c8c5ee5_I20230131" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy0yLTEtMS00ODUwMg_9e29d18c-2523-4b28-93e6-e110de0d1ba2">16,210,985</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i667c7d8bd763413abd796ad88c8c5ee5_I20230131" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy00LTEtMS00ODUwMg_55b3abbb-4e5c-4301-b594-ac1a7efbabe1">162</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i52f18ac9d41d46c1b4576913f0de57f0_I20230131" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy02LTEtMS00ODUwMg_fd80cff8-804f-4890-ad8b-71386217a649">120,890</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i9f3fd36ef804401099a0e750874625c5_I20230131" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy04LTEtMS00ODUwMg_75654074-5dea-4858-9c80-ba3c830b6ef0">50,631</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i530ce63704924b638cd8c6149473e0ad_I20230131" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy0xMC0xLTEtNDg1MDI_4a7a79ad-4a8e-4dcc-8654-8327e91076c5">2,360</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy0xMi0xLTEtNDg1MDI_b8e8404d-1135-48a4-803f-926b2ea3af2c">68,061</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net loss</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="if89b5f15562444589f2f0392b7e37c7b_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNC04LTEtMS00ODUwMg_581c7beb-d791-4626-8ec3-45d755626c22">1,442</ix:nonFraction>)</span></td><td style="padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNC0xMi0xLTEtNDg1MDI_253820ed-32b2-4875-a0ed-258424b2ed6a">1,442</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash dividends</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Pension adjustments, net of tax effect of $<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNi0wLTEtMS00ODUwMi90ZXh0cmVnaW9uOjQwZjFmYjlkNGUyZjRkMDA5ODQ0MzA4YTY1MGFhOWJjXzQ2_4fd1d840-667c-44f3-bf7f-04f75d69f89a">0</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7c69e53c96e4b93a110462966b1044c_D20230201-20230430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNi0xMC0xLTEtNDg1MDI_02c28b4e-390e-41b7-b6fc-f902830f49e9">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNi0xMi0xLTEtNDg1MDI_adf46754-2502-40ce-a205-1c5b067301ab">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares vested and others</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock compensation expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i256c053448c64068bcfe4b5edb8fbde9_D20230201-20230430" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOC02LTEtMS00ODUwMg_a01285b9-ed85-4792-9ae1-140424ed53bb">103</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOC0xMi0xLTEtNDg1MDI_2979f952-3679-41d1-bdae-8b4d5a26e709">103</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at April 30, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i6331f468c1814d99be11cc79ece13034_I20230430" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS0yLTEtMS00ODUwMg_e7852b37-e120-46aa-9384-3b77e1b0ad8d">16,210,985</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i6331f468c1814d99be11cc79ece13034_I20230430" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS00LTEtMS00ODUwMg_9f1ccf77-289b-4b7e-a05d-26cb4db09a31">162</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ibf3a5d830a114294ba4d2e0cdabd77a6_I20230430" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS02LTEtMS00ODUwMg_c6aad746-f2fe-4827-b810-7c749218223f">120,993</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i6bf9009158994bc092f61b9ad38652f2_I20230430" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS04LTEtMS00ODUwMg_31882200-dd26-4b3c-a726-c0bba4b4758a">52,073</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i3ed6c2f2b1f5445eb2398cc14cbf6529_I20230430" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS0xMC0xLTEtNDg1MDI_c2c4e509-083b-4c68-b24d-852ecfa5bd61">2,360</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS0xMi0xLTEtNDg1MDI_6a5e6342-1662-4d68-9d67-c1f4ffa47a5a">66,722</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:21.841%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.429%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.829%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.164%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.976%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.488%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.976%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.223%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.829%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.458%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.535%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.817%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three-Month Period Ended April 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Common Stock</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">In thousands, except share data</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Shares</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Additional Paid-in Capital</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated Deficit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Accumulated Other Comprehensive Loss</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total Stockholder's Equity</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at February 1, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i52ba23c1caab43049763eb8c7c05905b_I20220131" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC0yLTEtMS00ODUwMg_7ddd8133-6a76-488e-a21a-ade2c6b208e7">16,102,023</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i52ba23c1caab43049763eb8c7c05905b_I20220131" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC00LTEtMS00ODUwMg_d9a30f2e-7d21-4445-a836-b91df8e29bea">161</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i31bda8c8ea4842e681e8ef1dd7e18618_I20220131" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC02LTEtMS00ODUwMg_80c40cb4-aa67-42a4-9c0c-82b3029a8ae1">120,492</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i32b42948e1b446038414c0e7223ff341_I20220131" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC04LTEtMS00ODUwMg_9e5309c0-c013-4a6d-96a8-ed69570d451e">67,178</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ifc993466e76e4fb891805f5b996dc151_I20220131" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC0xMC0xLTEtNDg1MDI_89759fa7-e8bb-410e-b8d9-61db622cd89c">6,029</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i35924208d3d746c491b0ea2b2e4d7e29_I20220131" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC0xMi0xLTEtNDg1MDI_798deb15-e87c-4a2d-9b15-15de5ac53ca5">47,446</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Net loss</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ibdec95bb07e941ebb2d1d770b5bfc78e_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNS04LTEtMS00ODUwMg_0e598af7-1293-48ab-b97c-61d53c3e891b"><ix:nonFraction unitRef="usd" contextRef="ibdec95bb07e941ebb2d1d770b5bfc78e_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNS04LTEtMS00ODUwMg_3dc7314d-fba8-42b2-b7b8-d9c49b19185f">5,084</ix:nonFraction></ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNS0xMi0xLTEtNDg1MDI_fa2ea623-f494-4f29-a79d-700bd9d63483">5,084</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Cash dividends</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Pension adjustments, net of tax effect of $<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNy0wLTEtMS00ODUwMi90ZXh0cmVnaW9uOjU0MTBiZjgxNmVhNDRmMzFiMGIyNDExYzEwMmE4YTdlXzQ2_3f735075-0d8a-494a-bcf8-dbe1c883d30f">0</ix:nonFraction></span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i859cef3d71ce4197917e115a33760a0c_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNy0xMC0xLTEtNDg1MDI_199e0a05-20d0-4f37-b435-f717399bfae2">135</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNy0xMi0xLTEtNDg1MDI_65fb78db-a407-445d-901a-d47c0f9d065f">135</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Shares vested and others</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Stock compensation expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i2e0b8b7b8b284ac78c8f0f4961f42d6c_D20220201-20220430" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfOS02LTEtMS00ODUwMg_1a2a36d2-b954-42cc-a80f-9cba94843fed">253</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfOS0xMi0xLTEtNDg1MDI_c0b151e7-22e4-4401-b6b2-0965084c05de">253</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Balance at April 30, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="if6576d858fc646ff91951e75237ea454_I20220430" decimals="INF" name="us-gaap:CommonStockSharesOutstanding" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtMi0xLTEtNDg1MDI_03f94244-79f4-4a25-8d6c-8a83366e30ad">16,102,023</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if6576d858fc646ff91951e75237ea454_I20220430" decimals="-3" name="us-gaap:StockholdersEquity" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtNC0xLTEtNDg1MDI_ee57ef62-8cf6-4886-b4e9-b53c901f6f6d">161</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia7b3209a5d5a4a70ad9bf906a779f3f1_I20220430" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtNi0xLTEtNDg1MDI_f217e0ad-4bb8-40b3-86c0-2c9950319e2f">120,745</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ic325352fd9224629a7d5d63a7f9d3d86_I20220430" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtOC0xLTEtNDg1MDI_cc5b1caf-8503-474c-ac9f-7b5c5c4b9592">72,262</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i635c7842e4f14afd951d730fbd2d02ae_I20220430" decimals="-3" sign="-" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtMTAtMS0xLTQ4NTAy_ef37c7b9-ea06-4104-bf81-aa4577ad4c2d">5,894</ix:nonFraction>)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:StockholdersEquity" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtMTItMS0xLTQ4NTAy_7680f1cf-350f-4d0c-b57c-569522a1a700">42,750</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div><span><br/></span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">See accompanying notes to unaudited condensed consolidated financial statements.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">8</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_40"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">VIRCO MFG. CORPORATION</span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Notes to unaudited Condensed Consolidated Financial Statements</span></div><div style="margin-top:9pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">April&#160;30, 2023</span></div><div id="i9f22950a62b445c58886781e487ff8d6_43"></div><div style="margin-bottom:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 1. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80My9mcmFnOmZjZjBmYTcyZmZmNjRlYjViMmMzZjliYmRmN2Y3MzdiL3RleHRyZWdpb246ZmNmMGZhNzJmZmY2NGViNWIyYzNmOWJiZGY3ZjczN2JfMTkwNg_1034ecb6-96e6-4fb5-b1d1-52dcd72843ca" continuedAt="i8ee5e553a6c041f19b5fa4454af5250d" escape="true">Basis of Presentation</ix:nonNumeric></span></div><div style="margin-bottom:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i8ee5e553a6c041f19b5fa4454af5250d">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States (U.S. GAAP) for interim financial information and pursuant to the rules and regulations of the Securities and Exchange Commission. Accordingly, they do not include all of the information and notes required by generally accepted accounting principles for complete financial statements and are presented in accordance with the requirements of Form 10-Q and Rule 10-01 of Regulation S-X. These unaudited condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and notes thereto included in the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended January&#160;31, 2023 (&#8220;Form&#160;10-K&#8221;).&#160; In the opinion of management, all adjustments considered necessary for a fair presentation have been included. Operating results for the three months ended April&#160;30, 2023 are not necessarily indicative of the results that may be expected for the fiscal year ending January&#160;31, 2024.  The balance sheet at January&#160;31, 2023 has been derived from the audited consolidated financial statements at that date, but does not include all of the information and notes required by accounting principles generally accepted in the United States for complete financial statements. All references to the &#8220;Company&#8221; refer to Virco Mfg. Corporation and its subsidiaries.</ix:continuation></span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_46"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 2. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="virc:SeasonalityTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMjgzNA_b83606e6-21e0-49a5-9a76-67f0caeca4ab" continuedAt="if61f839f7bc640c69773e56ae371bdff" escape="true">Seasonality and Management Use of Estimates</ix:nonNumeric></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="if61f839f7bc640c69773e56ae371bdff" continuedAt="ibd503db4c5384cf696fb865d1283199f">The market for educational furniture is marked by extreme seasonality, with approximately <ix:nonFraction unitRef="number" contextRef="iebf10b00d5b540539b5c9836dce200af_D20230201-20230430" decimals="2" name="virc:ExtremeSeasonalityGoods" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMTQ3_10111491-17b1-4bc8-8b35-3cb7bf912a83">50</ix:nonFraction>% of the Company&#8217;s total sales typically occurring from June to August each year, the Company&#8217;s peak season. Hence, the Company typically builds and carries significant amounts of inventory during and in anticipation of this peak summer season to facilitate the rapid delivery requirements of customers in the educational market. This requires a large up-front investment in inventory, labor, storage and related costs as inventory is built in anticipation of peak sales during the summer months. As the capital required for this build-up generally exceeds cash available from operations, the Company has generally relied on third-party bank financing to meet cash flow requirements during the build-up period immediately preceding the peak season. In addition, the Company typically is faced with an overall higher accounts receivable balance during the peak season. This occurs for two primary reasons. First, accounts receivable balances typically increase during the peak season as shipments of products increase. Second, many customers during this period are educational institutions and government entities, which tend to pay accounts receivable slower than commercial customers.  Historically Virco ships approximately <ix:nonFraction unitRef="number" contextRef="iebf10b00d5b540539b5c9836dce200af_D20230201-20230430" decimals="2" name="virc:ExtremeSeasonalityGoods" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMjc0ODc3OTA3MjMyNA_2b91d8b2-030c-4e6d-bbf2-ad01c0cff674">50</ix:nonFraction>% of its annual revenue in the months of June, July, and August.  In fiscal 2022, the seasonal peak was distorted due to severe supply chain interruptions, labor shortages, and COVID-19 related employee absences and the Company delivered less than <ix:nonFraction unitRef="number" contextRef="i2ab2cbba95b540a8a4bb11033f99aadd_D20210201-20220131" decimals="2" name="virc:ExtremeSeasonalityGoods" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMjc0ODc3OTA3MjU3NA_e6e97c43-9f34-4e7c-a094-b86c19da3a71">40</ix:nonFraction>% of sales during June, July, and August.  In fiscal year ended January 31, 2023, the Company started to return to the traditional seasonality and delivered approximately <ix:nonFraction unitRef="number" contextRef="i756b4b4dd7e6405e8e3d1e8fbc4e6c8f_D20220201-20230131" decimals="2" name="virc:ExtremeSeasonalityGoods" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMjc0ODc3OTA3MjcyNA_3409b2c2-2641-4dbb-982f-b76903ac88a9">47</ix:nonFraction>% of annual sales in June, July, and August.  </ix:continuation></span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="ibd503db4c5384cf696fb865d1283199f">The Company&#8217;s working capital requirements during and in anticipation of the peak summer season require management to make estimates and judgments that affect assets, liabilities, revenues and expenses, and related contingent assets and liabilities. On an ongoing basis, management evaluates its estimates, including those related to market demand, labor costs and stocking inventory.  Significant estimates made by management include, but are not limited to, valuation of inventory; deferred tax assets and liabilities; useful lives of property, plant and equipment; liabilities under pension, warranty and self-insurance; and the accounts receivable allowance for doubtful accounts.</ix:continuation> </span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_49"></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 3.  Recently Issued Accounting Standards </span></div><div><span><br/></span></div><div><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80OS9mcmFnOjhjMjhjZWFkOGQ4YTQ2ZGY4NTdhNjEzNWM4ZGQ4MTFiL3RleHRyZWdpb246OGMyOGNlYWQ4ZDhhNDZkZjg1N2E2MTM1YzhkZDgxMWJfOTI1_75bbb535-9a4d-41ac-b454-0258417733ed" escape="true"><span style="color:#252525;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company evaluates all Accounting Standards Updates ("ASUs") issued by the Financial Accounting Standards Board ("FASB") for consideration of their applicability to our condensed consolidated financial statements. We have assessed all ASUs issued but not yet adopted and concluded that those not disclosed are not</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> relevant </span><span style="color:#252525;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">to</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> the Company or are not expected to have a material impact.</span></ix:nonNumeric></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_55"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 4. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81NS9mcmFnOmE3ZjQ3Njc2ZjQ5YTRiMzRiZDQwMjFkNzU5YTMyYWU3L3RleHRyZWdpb246YTdmNDc2NzZmNDlhNGIzNGJkNDAyMWQ3NTlhMzJhZTdfMjg3OQ_47027a69-fe19-4081-b602-0407c085bb74" continuedAt="i5b3c556a65444367859967a067d51ac1" escape="true">Revenue Recognition</ix:nonNumeric></span></div><div style="text-align:justify"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i5b3c556a65444367859967a067d51ac1" continuedAt="ic4315f503036448d8685f5f078a63ae2">The Company manufactures, markets and distributes a wide variety of school and office furniture to wholesalers, distributors, educational institutions and governmental entities. Revenue is recorded for promised goods or services when control is transferred to customers in an amount that reflects the consideration to which the entity expects to be entitled to in exchange for those goods or services.</ix:continuation></span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">9</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="ic4315f503036448d8685f5f078a63ae2"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's sales generally involve a single performance obligation to deliver goods pursuant to customer purchase orders.&#160; Prices for our products are based on published price lists and customer agreements. The Company has determined that the performance obligations are satisfied at a point in time when the Company completes delivery per the customer contract. The majority of sales are free on board ("FOB") destination where the destination is specified per the customer contract and may include delivering the furniture into the classroom, school site or warehouse. Sales of furniture that are sold FOB factory are typically made to resellers of our product who in turn provide logistics to the ultimate customer. Once a product has been delivered per the shipping terms, the customer is able to direct the use of, and obtain substantially all of the remaining benefits from the asset. The Company considers control to have transferred upon shipment or delivery in accordance with shipping terms because the Company has a present right to payment at that time, the customer has legal title to the asset, the Company has transferred physical possession of the asset, and the customer has significant risks and rewards of ownership of the asset.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Sales are recorded net of discounts, sales incentives and rebates, sales taxes and estimated returns and allowances.  The Company offers sales incentives and discounts through various regional and national programs to our customers. These programs include product rebates, product returns allowances and trade promotions. Variable consideration for these programs is estimated in the transaction price at contract inception based on current sales levels and historical experience using the expected value method, subject to constraint.</span></div><div><span><br/></span></div><div><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company generates revenue primarily by manufacturing and distributing products through resellers and direct-to-customers. Control transfers to both resellers and direct customers at a point in time when the delivery process is complete as determined by the corresponding shipping terms. Therefore, we do not consider them to be meaningfully different revenue streams given similarities in the nature of the products, performance obligation and distribution processes. Sales are predominately in the United States and to a similar class of customer. We do not manage or evaluate the business based on product line or any other discernable category.</span></div></ix:continuation><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_58"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 5. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:InventoryDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RleHRyZWdpb246NTkwZDMyM2NiNTI5NDMyMGFkNjdmYzU0MGJmNGViODdfMTIwMA_0379efa5-18b4-4b98-8b65-02897d7cdd56" continuedAt="i9027c5767db6420daee6dbf6a8bad45e" escape="true">Inventories</ix:nonNumeric></span></div><ix:continuation id="i9027c5767db6420daee6dbf6a8bad45e"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventory is valued at the lower of cost or net realizable value (determined on a first-in, first-out basis) and includes material, labor, and factory overhead.  The Company records valuation adjustments for the excess cost of the inventory over its estimated net realizable value.  Valuation adjustments for slow-moving and obsolete inventory are calculated using an estimated percentage applied to inventories based on a physical inspection of the product in connection with a physical inventory, a review of slow-moving products and component stage, inventory category, historical and forecasted consumption of sales, and consideration of active marketing programs.  The market for education furniture is traditionally driven by value, not style, and the Company has not typically incurred material obsolescence expenses.  If market conditions are less favorable than those anticipated by management, additional valuation adjustments may be required.  The Company records the cost of excess capacity as a period expense, not as a component of capitalized inventory valuation.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventory increased by $<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="virc:IncreaseInInventories" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RleHRyZWdpb246NTkwZDMyM2NiNTI5NDMyMGFkNjdmYzU0MGJmNGViODdfNDM5ODA0NjUxNjg1NA_377ea38a-abe9-48e5-8b1d-fe88aa25a4f1">19,343,000</ix:nonFraction> at April 30, 2023 compared to April 30, 2022.  The entire increase in inventory was attributable to increased quantity.  The cost and valuation of inventory was stable. The quantity of inventory was increased in response to a material increase in unshipped sales orders (backlog).  The majority of the backlog is scheduled for delivery during the traditional seasonal peak from June through August.  The increase in inventory was financed by increased borrowing under the Company&#8217;s line of credit with PNC Bank and increased vendor credit, which traditionally increases with increased purchases of materials.</span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:ScheduleOfInventoryCurrentTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RleHRyZWdpb246NTkwZDMyM2NiNTI5NDMyMGFkNjdmYzU0MGJmNGViODdfMTE5Ng_098128d6-c059-4f1c-890c-0f8c0b473edf" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a breakdown of the Company&#8217;s inventories as of April&#160;30, 2023, January&#160;31, 2023 and April&#160;30, 2022:</span></div><div style="margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"><tr><td style="width:1.0%"></td><td style="width:54.852%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.544%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.739%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.544%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.739%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.841%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.741%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1/31/2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Finished goods</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfMy0yLTEtMS00ODUwMg_bfca7d0e-2ba9-4bc0-9495-096eed934bd9">34,370</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfMy00LTEtMS00ODUwMg_524d39c5-4491-4452-bc78-41be3c038faa">25,740</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:InventoryFinishedGoodsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfMy02LTEtMS00ODUwMg_108bbdb4-1f66-42e3-bd0d-cdd374bf791f">29,919</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Work in process</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNC0yLTEtMS00ODUwMg_e86b3f9b-6320-4eb4-8aa1-5acc531a1abe">32,918</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNC00LTEtMS00ODUwMg_6b8919b6-2e45-4cda-8282-ea427a37ec33">25,303</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:InventoryWorkInProcessNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNC02LTEtMS00ODUwMg_f97a0a71-8a59-4748-a392-233e74f42a1d">21,719</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:InventoryRawMaterialsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNS0yLTEtMS00ODUwMg_1ed51cd3-eff6-4abe-bae7-0e2eea57c2ab">18,352</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:InventoryRawMaterialsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNS00LTEtMS00ODUwMg_e1a4195c-1fb9-43bf-9af5-948946789963">16,363</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:InventoryRawMaterialsNetOfReserves" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNS02LTEtMS00ODUwMg_8fe4a7d0-54fd-4dd7-9157-067913f56b54">14,659</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNi0yLTEtMS00ODUwMg_6a0ad2b8-11e5-4977-a1e3-a3e02ef70f56">85,640</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNi00LTEtMS00ODUwMg_3c819764-a2dd-4a93-ba81-b3ffb5fc175f">67,406</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:InventoryNet" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNi02LTEtMS00ODUwMg_4bd328f8-0a98-4ffe-9af7-fc2e464fa476">66,297</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="margin-top:4pt"><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_61"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 6.  <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:LesseeOperatingLeasesTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RleHRyZWdpb246YTgyMDcwYmU4OGI1NGU1MDk5NGQ4ZjgwNDY2YmZhYjlfMTAwMw_03a58b95-d93f-4132-bdd6-3254450cb389" continuedAt="i19226decfcb94180b9508cd58cfae053" escape="true">Leases</ix:nonNumeric></span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">10</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i19226decfcb94180b9508cd58cfae053" continuedAt="i34e9aa55068f43efac594f7511f7ebf8"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has operating leases on real property, equipment, and automobiles, expiring at various dates through 2026.  The Company determines if an arrangement is a lease at inception and assesses classification of the lease at commencement. All of the Company&#8217;s leases are classified as operating leases.  Pursuant to ASC 842 -</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Leases</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company uses the implicit rate when readily determinable, or the incremental borrowing rate.  Our incremental borrowing rate is estimated to approximate the interest rate on a collateralized basis with similar terms and payments using Company specific credit spreads. The Company&#8217;s lease terms include options to extend or terminate the lease only when it is reasonably certain that we will exercise that option. Lease expense for our operating leases is recognized on a straight-line basis over the lease term.  </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company has an operating lease for its corporate office, manufacturing and distribution facility located in Torrance, CA, currently with a remaining lease term through April 2025. The Company's lease terms include options to extend or terminate the lease only when it is reasonably certain that we exercise that option.  The Company leases equipment under a&#160;5-year operating lease arrangement. The Company has the option of buying the assets at the end of the lease period at a price that does not result in the Company being reasonably certain of exercising the option. In addition, the Company leases trucks and automobiles under operating leases that include certain fleet management and maintenance services. Certain of the leases contain renewal or purchase options and require payment for property taxes and insurance. The Company records lease expense on a straight-line basis based on the contractual lease payments.  In accordance with ASC 842, the Company recognizes the present value of the future lease commitments as an operating lease liability, and a corresponding right-of-use asset (&#8220;ROU asset&#8221;), net of tenant allowances.  Tenant improvements and related tenant allowances are recorded as a reduction to the ROU asset.  The Company elected to account for leases with an original term of 12 months or less that do not contain a purchase option as short-term leases. Additionally, certain of the leases provide for variable payment for property taxes, insurance, and common area maintenance payments among others. The Company recognizes variable lease expenses for these leases in the period incurred. The Company's lease agreements do not contain any material residual value guarantees or material restrictive covenants.  </span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:LeaseCostTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RleHRyZWdpb246YTgyMDcwYmU4OGI1NGU1MDk5NGQ4ZjgwNDY2YmZhYjlfMTAwNg_b8fd08da-5dca-4cd8-bdbb-ae725cc6ef96" escape="true"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The quantitative information regarding our leases is as follows:</span></div><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"><tr><td style="width:1.0%"></td><td style="width:59.465%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:0.1%"></td><td style="width:0.841%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.798%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.395%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.801%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands, except lease term and discount rate)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMy01LTEtMS00ODUwMg_7188adf9-7c50-442f-829f-45e18fbff814">1,269</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:OperatingLeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMy03LTEtMS00ODUwMg_2cc2e9bd-0682-4f1b-a0e1-77ee2a1f14e9">1,327</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:ShortTermLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNC01LTEtMS00ODUwMg_5a56d8de-6a00-4922-9a8b-2610e8e2f615">108</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:ShortTermLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNC03LTEtMS00ODUwMg_be39680a-4978-4a44-b1ca-780c76de0dbf">97</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sublease income</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:SubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNS01LTEtMS00ODUwMg_d4695031-9a86-440a-acbf-19d847ade9ef">10</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:SubleaseIncome" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNS03LTEtMS00ODUwMg_1598be5d-9cc4-4c2a-b61f-086844218214">10</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Variable lease cost</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:VariableLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNi01LTEtMS00ODUwMg_ee92e8ac-763e-4185-b7db-5979ccc85437">261</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:VariableLeaseCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNi03LTEtMS00ODUwMg_ee4baef7-2416-4b18-9f7b-a59f38899ae9">253</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNy01LTEtMS00ODUwMg_8c6a652d-f49a-4edd-951e-f9ea1a01a4ee">1,628</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:LeaseCost" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNy03LTEtMS00ODUwMg_2a951b53-a90f-4b45-b89e-ee454047ff6a">1,667</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Other operating leases information:</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:PaymentsForRent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTAtNS0xLTEtNDg1MDI_82a29d20-47e8-4687-a1b3-89e6acd5b5bb">1,433</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:PaymentsForRent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTAtNy0xLTEtNDg1MDI_f51264e8-d108-4871-b634-939c68beb9e2">1,454</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for new lease liabilities</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:CapitalLeaseObligationsIncurred" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTEtNS0xLTEtNDg1MDI_e22b8ea4-bc66-493d-8503-abe98bf893b6">292</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:CapitalLeaseObligationsIncurred" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTEtNy0xLTEtNDg1MDI_bb1d3360-ed31-4377-a456-410b39dc62ef">98</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term (years)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTItNS0xLTEtNDg1MDI_1ff1f151-1cce-4bc9-b39c-11b891bb9c3f">2.2</ix:nonNumeric></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonNumeric contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTItNy0xLTEtNDg1MDI_6d548d78-1935-4e51-b531-195fd3abfee3">2.9</ix:nonNumeric></span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTMtNS0xLTEtNDg1MDI_ed2d0f9c-d6a6-4a63-90e2-11856bf6c0dd">6.33</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="number" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="4" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTMtNy0xLTEtNDg1MDI_0123fb78-9c4d-454a-b44b-a766c214bc83">6.38</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div></ix:nonNumeric><div style="margin-top:5pt;text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RleHRyZWdpb246YTgyMDcwYmU4OGI1NGU1MDk5NGQ4ZjgwNDY2YmZhYjlfMTAwOA_23dca4e2-e21c-4ed4-acae-8a5dd3d4d010" continuedAt="i22372ea0a69d4891aeac6b8c35cff9ac" escape="true">Minimum future lease payments for operating leases in effect as of&#160;April&#160;30, 2023, are as follows:</ix:nonNumeric></span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">11</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:5pt;text-align:center"><ix:continuation id="i34e9aa55068f43efac594f7511f7ebf8"><ix:continuation id="i22372ea0a69d4891aeac6b8c35cff9ac"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.614%"><tr><td style="width:1.0%"></td><td style="width:79.481%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.319%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Lease</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">For the year ending January 31, </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remaining of 2024</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMi0xLTEtMS00ODUwMg_348148ad-5894-42f6-aa44-efe6b28a0bba">4,344</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMy0xLTEtMS00ODUwMg_e965f487-973b-4a25-86b2-c85b456f2579">5,794</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfNC0xLTEtMS00ODUwMg_8157a552-c479-4a59-85e2-dd1ad05247df">1,536</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfNS0xLTEtMS00ODUwMg_e0b09a34-b6ed-49ee-b8ef-7a0155fbbe5c">2</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfNi0xLTEtMS00ODUwMg_45f72721-751e-4b96-a5c8-f8e876dc306b">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="virc:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfNy0xLTEtMS00ODUwMg_e705b050-a67f-4e5a-a92b-7e6d433fc6d1">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Remaining balance of lease payments</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfOC0xLTEtMS00ODUwMg_0a5381bb-24ef-449e-94ac-e46bc3d64167">11,676</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease liabilities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTAtMS0xLTEtNDg1MDI_10f882ce-d63a-420b-816e-d825d8fa72f2"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OperatingLeaseLiabilityCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTAtMS0xLTEtNDg1MDI_74e876d5-c723-4a5f-a231-20a447f5be89">5,271</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OperatingLeaseLiabilityNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTEtMS0xLTEtNDg1MDI_ccc53ffb-d291-4fbe-a46f-b4d58185689b">5,648</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total lease liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:OperatingLeaseLiability" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTItMS0xLTEtNDg1MDI_9f21dc90-56a9-4315-9c78-c35a1d213ca0">10,919</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Difference between undiscounted cash flows and discounted cash flows</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTQtMS0xLTEtNDg1MDI_a6ae1dd8-c5c7-49b5-acd0-467ee78ad319">757</ix:nonFraction></span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></ix:continuation></ix:continuation></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_64"></div><div style="margin-bottom:6pt;margin-top:6pt"><span><br/></span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 7. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:DebtDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNjc1Mg_4ca481f1-2225-4953-a280-b78df86ea18e" continuedAt="i0bfdcf923c3c4704893a0cbf912c65f9" escape="true">Debt</ix:nonNumeric></span></div><ix:continuation id="i0bfdcf923c3c4704893a0cbf912c65f9" continuedAt="i792cdafff89c44b1858bffedd161e3f7"><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:ScheduleOfDebtInstrumentsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNjc1MQ_e566c856-6949-4e2a-bf0b-5487a4fbbe59" escape="true"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Outstanding balances for the Company&#8217;s long-term debt were as follows:</span></div><div style="margin-bottom:6pt;margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.807%"><tr><td style="width:1.0%"></td><td style="width:55.701%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.801%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.547%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.801%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.547%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.803%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1/31/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revolving credit line</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7a2f7b44cab3414e801e207554b6cb6a_I20230430" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMi0xLTEtMS00ODUwMg_26ee238a-e8a7-47fd-a645-e10dd6fe1382">30,121</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia4625a145f054c6f944f092eabe7972e_I20230131" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMi0zLTEtMS00ODUwMg_4c382986-dc27-458b-9b9f-20beae1e6472">17,122</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie31f7af831874309a231e49017ef6fd3_I20220430" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMi01LTEtMS00ODUwMg_10731308-09fd-457f-8cca-507a5773eef5">28,674</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i817023d33a2c4b06a2faf3fe4bc4a5f3_I20230430" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMy0xLTEtMS00ODUwMg_be0a2fb5-d5ec-42af-9694-8ba0d33bbd9b">4,564</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if6190fa3b4a14376ba8b68fa6e2be828_I20230131" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMy0zLTEtMS00ODUwMg_8eb82653-d2ed-4488-9fb6-4574dbf03a78">4,622</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="if29a68af9f094831869c15d74305d73e_I20220430" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMy01LTEtMS00ODUwMg_ed3b4541-52eb-46f0-a399-b5f563f88eda">4,795</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total debt</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNC0xLTEtMS00ODUwMg_d844fa4c-324e-484b-bcd8-a9cd187dca59">34,685</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNC0zLTEtMS00ODUwMg_6b2760ca-bd50-47bc-9c9c-8f511d2ce37c">21,744</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LongTermDebt" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNC01LTEtMS00ODUwMg_0dab210d-47c0-44b5-adf8-385f3e9c3800">33,469</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less current portion</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNS0xLTEtMS00ODUwMg_e586093c-5a7b-420b-925e-160619f88524">20,362</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNS0zLTEtMS00ODUwMg_e4e8ecc3-bd55-4526-88f7-2998cd12426a">7,360</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LongTermDebtCurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNS01LTEtMS00ODUwMg_5315a815-69a9-4845-9eaa-f935141fc31a">18,905</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current portion</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNi0xLTEtMS00ODUwMg_1fa0b3bc-2177-4782-89e5-a1118fce679a">14,323</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNi0zLTEtMS00ODUwMg_d0d22aa0-ed49-49a3-b246-4a401b5b9ace">14,384</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:LongTermDebtNoncurrent" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNi01LTEtMS00ODUwMg_a201dd10-0ccf-48c5-a5a3-4889a304ffbc">14,564</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div></ix:nonNumeric><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company and Virco Inc., its wholly-owned subsidiary (the &#8220;Borrowers&#8221;) have a Revolving Credit and Security Agreement (the &#8220;Credit Agreement&#8221;) with PNC Bank, National Association, as administrative agent and lender (&#8220;PNC&#8221;).  The Credit Agreement was amended numerous times since its origination in December 2011.  On September 28, 2021, the Borrowers entered into an Amended and Restated Revolving Credit and Security Agreement (the &#8220;Restated Credit Agreement&#8221;) with PNC Bank, which amended and restated the prior Credit Agreement and effectively incorporated all of the prior amendments into an amended and restated form of agreement. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Restated Credit Agreement permits the Company to issue dividends or make payments with respect to the Company&#8217;s capital stock in an aggregate amount up to $<ix:nonFraction unitRef="usd" contextRef="ic99f7b405719435fb21df998ae2ec444_I20210928" decimals="-5" name="virc:DividendPayableMaximumAmountInFiscalYear" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfODkz_7ad4d0f3-836d-4763-86b3-8c1758bd3f68">3.0</ix:nonFraction> million during any fiscal year, provided that no default shall have occurred or is continuing or would result from any such payment, and the Company must demonstrate pro forma compliance with a 12-month trailing fixed charge coverage ratio of not less than <ix:nonFraction unitRef="number" contextRef="ifb78696c77304063b0f49344b285068a_I20210928" decimals="INF" name="virc:DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" format="ixt:num-dot-decimal" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNjc1Nw_b613e0a6-cbf4-41e7-aaad-e44466cb6799">1.20</ix:nonFraction>:1.00 as of the fiscal quarter immediately preceding the date of any such dividend or payment.  The Restated Credit Agreement also requires the Company to maintain a minimum fixed charge coverage ratio, and contains numerous other covenants that limit under certain circumstances the ability of the Borrowers and their subsidiaries to, among other things, merge with or acquire other entities, incur new liens, incur additional indebtedness, sell assets outside of the ordinary course of business, enter into transactions with affiliates, or substantially change the general nature of the business of the Borrowers.  In connection with the Restated Credit Agreement, the Company also agreed to pay to PNC Bank a non-refundable fee of $<ix:nonFraction unitRef="usd" contextRef="icb21eca85b6647d0a41413ec21a03897_I20210928" decimals="-3" name="us-gaap:DebtInstrumentFeeAmount" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDQ3Ng_b57d8072-8400-445d-9cd8-c1e1a21d745d">50,000</ix:nonFraction>.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In addition to the financial covenants, the Restated Credit Agreement provides for customary events of default, subject to certain cure periods and other limitations.  Substantially all of the Borrowers' accounts receivable are automatically and promptly swept to repay amounts outstanding under the Restated Credit Agreement upon receipt by the Borrowers. Due to this automatic liquidating nature of the Restated Credit Agreement, if the Borrowers breach any covenant, violate any representation </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">12</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><ix:continuation id="i792cdafff89c44b1858bffedd161e3f7"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">or warranty or suffer a deterioration in their ability to borrow pursuant to the borrowing base calculation, the Borrowers may not have access to cash liquidity unless provided by PNC at its discretion. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The other material terms of the Restated Credit Agreement are substantially the same as those of the original Credit Agreement, consisting of (i) a revolving line of credit with a Maximum Revolving Advance Amount of  $<ix:nonFraction unitRef="usd" contextRef="ia43dde74291e440297c825b0c65e0613_I20230430" decimals="-5" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMTk5Mw_7d28d231-0cd8-4dba-a4de-6b78c6841c51">65.0</ix:nonFraction> million that is subject to a borrowing base limitation and generally provides for advances of up to <ix:nonFraction unitRef="number" contextRef="i79d1afc994cc438b9333f2182b2eb286_D20230201-20230430" decimals="2" name="virc:LineOfCreditFacilityBorrowingBaseLimitation" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjA5Ng_0482c67c-a4ae-4171-a427-6eb880a40ff6">85</ix:nonFraction>% of eligible accounts receivable, plus a percentage equal to the lesser of <ix:nonFraction unitRef="number" contextRef="i62a77fa9904b43519b12ab5521fbfc50_D20230201-20230430" decimals="2" name="virc:LineOfCreditFacilityBorrowingBaseLimitation" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjE3Mw_13003641-2e4f-4d34-8781-524142184699">60</ix:nonFraction>% of the value of eligible inventory or <ix:nonFraction unitRef="number" contextRef="i2ab1ef2c4f7047d48c0303f65520f6fd_D20230201-20230430" decimals="2" name="virc:LineOfCreditFacilityBorrowingBaseLimitation" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjIxNA_0e3c1766-b519-4647-9e81-5a710791a2bb">85</ix:nonFraction>% of the liquidation value of eligible inventory, plus $<ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="INF" name="virc:LineOfCreditFacilityBorrowingCapacityTerm" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjI3MA_7d2344f7-e2fa-4c61-9e63-d63d0d95eeb3">15.0</ix:nonFraction> million from January through July of each year, minus undrawn amounts of letters of credit and reserves and (ii) an equipment loan of $<ix:nonFraction unitRef="usd" contextRef="i5ea441bc5c934be682f32a5baa341109_I20230430" decimals="-5" name="us-gaap:LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDQ4NQ_d0ba0293-56e3-462e-8c6c-35099182511e">2.0</ix:nonFraction>&#160;million.  The Restated Credit Agreement is secured by substantially all of the Borrowers&#8217; personal property and certain of the Borrowers&#8217; real property. The Restated Credit Agreement is subject to certain prepayment penalties upon early termination of the Restated Credit Agreement. Prior to the maturity date, principal amounts outstanding under the Restated Credit Agreement may be repaid and reborrowed at the option of the Borrowers without premium or penalty, subject to borrowing base limitations, seasonal adjustments and certain other conditions, including reduced borrowings under the revolving line to less than or equal $<ix:nonFraction unitRef="usd" contextRef="ie06315b6326d4b3d98afbe1efd76fde7_I20230430" decimals="-5" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjk5OQ_d5fbcc96-13f4-418c-a219-fc1db9ae67cb">10.0</ix:nonFraction> million for a period of <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="virc:LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" format="ixt-sec:durday" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMzAyNg_cf4f4045-8f6f-47b6-b609-fed2cea9823d">30</ix:nonNumeric> consecutive days during the fourth quarter of each fiscal year. The Restated Credit Agreement also contains certain financial covenants, including covenants requiring a minimum fixed charge coverage ratio and limits on capital expenditures. The Company was in compliance with its debt covenants as of April&#160;30, 2023.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company's revolving line of credit with PNC is structured to provide seasonal credit availability during the Company's peak summer season. Approximately $<ix:nonFraction unitRef="usd" contextRef="i9665e52c433240ef84f46d104164bd2b_I20230430" decimals="-5" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDQyMQ_885d2b27-1d80-4a48-aaff-bbcb38a5ad61">16.6</ix:nonFraction> million was available for borrowing as of April&#160;30, 2023.  The interest rate range for outstanding loan balances during the quarter ended April&#160;30, 2023 was <ix:nonFraction unitRef="number" contextRef="ie35abe19f9f1469a8eae1c647f7c08ef_I20230430" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDMwMA_8dafdb93-b341-4b7d-bfaa-ab8ecad3d419">7.65</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="i08ef98998f094e798fa98b2f252dc5d6_I20230430" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDQ5Nw_0eb12552-8bba-4003-8239-1a3c2c598b3a">9.75</ix:nonFraction>%. The Company also incurs a fee on the unused portion of the revolving line of credit at a rate of <ix:nonFraction unitRef="number" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="INF" name="us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDU5OQ_ebca6c83-55b4-43c5-b4d6-1d54adea45c2">0.375</ix:nonFraction>%. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In addition to the outstanding debt balance of $<ix:nonFraction unitRef="usd" contextRef="i7a2f7b44cab3414e801e207554b6cb6a_I20230430" decimals="-5" name="us-gaap:LongTermDebt" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDY1Mw_98b0da6b-075e-4efd-bee8-e0974c746c1a">30.1</ix:nonFraction> million on the Company's revolving credit line, the Company also carries a mortgage on a manufacturing building in Conway Arkansas. The original note was dated August 2017 for $<ix:nonFraction unitRef="usd" contextRef="i039bec46eeb14855a38dcf9d8f5abc84_I20170831" decimals="-5" name="us-gaap:DebtInstrumentFaceAmount" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDgzMw_865e53c3-e748-4aed-a0f8-b8ec9845f653">5.8</ix:nonFraction>&#160;million, at a fixed rate of <ix:nonFraction unitRef="number" contextRef="i039bec46eeb14855a38dcf9d8f5abc84_I20170831" decimals="INF" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDg1Nw_8f928558-880f-45cf-8e5d-120a209e195a">4</ix:nonFraction>% per year and <ix:nonNumeric contextRef="i10fa72e190f1458da0355bf56b31fc96_D20170801-20170831" name="us-gaap:DebtInstrumentTerm" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDg3NA_90bf25ea-44d9-4b76-ba0e-0dcf414befbd">20</ix:nonNumeric> years term.  The outstanding amount under this note was $<ix:nonFraction unitRef="usd" contextRef="iff2c0793561f4e4984581d42b5d8aec1_I20230430" decimals="-5" name="us-gaap:LongTermDebt" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDkyOA_eff88db9-cd4b-4ed7-9565-99967fb6fe45">4.6</ix:nonFraction> million as of April&#160;30, 2023.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 19, 2023, the Company entered into Amendment No. 3 to Amended and Restated Revolving Credit and Security Agreement (&#8220;Amendment No. 3&#8221;) with PNC, with an effective date of May 5, 2023. Amendment No. 3 amended the Restated Credit Agreement and the secured revolving line of credit provided to the Company under the revolving credit facility to reflect the following material changes:</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">i.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:12.73pt">Maximum size of the PNC line of credit has been increased to $<ix:nonFraction unitRef="usd" contextRef="i128c9fd6ffdd4691a605fc1dfd1e983b_D20230519-20230519" decimals="-5" name="us-gaap:LineOfCreditFacilityIncreaseDecreaseForPeriodNet" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDMwOQ_0c4793e3-251e-4bde-9338-476d361c4672">72.5</ix:nonFraction>&#160;million during the months of June through August of 2023, to provide additional availability for the Company&#8217;s forecast through the 2023 peak borrowing period;</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">ii.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:9.96pt">Increase in the total inventory sublimit under the Credit Agreement to $<ix:nonFraction unitRef="usd" contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519" decimals="-5" name="virc:IncreaseDecreaseInInventorySublimitUnderCreditAgreement" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDMzOQ_31bab8e3-680f-47ba-ad43-40e3f67ba826">35.0</ix:nonFraction>&#160;million and increase in the Assemble-to-ship (ATS) inventory sublimit to $<ix:nonFraction unitRef="usd" contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519" decimals="-5" name="virc:IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDMyNA_e5b637f2-6b6e-4d57-95f3-c3ec74d42472">15.0</ix:nonFraction>&#160;million during the months of May through August of 2023; </span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">iii.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:7.19pt">The Company agreed to pay an amendment fee of $<ix:nonFraction unitRef="usd" contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519" decimals="-3" name="virc:CreditAgreementAmendmentFee" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDM1NA_289c0424-72b6-4c04-9f5f-af0dcb2769e3">50,000</ix:nonFraction>, which is <ix:nonFraction unitRef="number" contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519" decimals="4" name="virc:IncrementalCreditLineIncreaseDecreasePercentage" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDM2Mw_53a59494-33a1-4675-aba5-b74334c78967">0.67</ix:nonFraction>% on the incremental line increase of $<ix:nonFraction unitRef="usd" contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519" decimals="-5" name="virc:IncrementalCreditLineIncreaseDecrease" format="ixt:num-dot-decimal" scale="6" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDM3MA_a5da5137-885b-4e86-bcfa-f27cdfa9b5b1">7.5</ix:nonFraction>&#160;million; and</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">iv.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:7.73pt">Increase in the Applicable Margin (as defined in the Credit Agreement) of <ix:nonFraction unitRef="basispoint" contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519" decimals="0" name="virc:IncreaseDecreaseApplicableMarginBasisPoints" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDM4NA_d41a9e49-1965-47f4-b649-58593e1cbe87">25</ix:nonFraction> basis points.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Management believes that the carrying value of debt approximated fair value at April&#160;30, 2023, as all of the long-term debt bears interest at variable rates based on prevailing market conditions.</span></div></ix:continuation><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_67"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 8. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:IncomeTaxDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMzk5MA_31f4e255-9eb8-475a-984d-2d69b6d2f840" continuedAt="i7f30109d9dd84743aeea810a4bdd1b08" escape="true">Income Taxes</ix:nonNumeric></span></div><ix:continuation id="i7f30109d9dd84743aeea810a4bdd1b08" continuedAt="ic3fda4c35378429a8cfbd95719ef4d6a"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In assessing the realizability of deferred tax assets, the Company considers whether it is more likely than not that some portion or all of its deferred tax assets will not be realized.  The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income or reversal of deferred tax liabilities during the periods in which those temporary differences become deductible. As a part of this evaluation, the Company assesses all available positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, the availability of tax carry backs, tax-planning strategies, and results of recent operations, to determine whether sufficient future taxable income will be generated to realize existing deferred tax assets.  Valuation allowances of $<ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjA0NQ_66d7af5b-f9b1-4d62-aac5-0ed9b95e3a27">575,000</ix:nonFraction>, $<ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjA0OQ_d28349cf-b4e0-4b78-8786-fb9f22910dba">864,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:DeferredTaxAssetsValuationAllowance" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjA1Ng_267b049a-9884-4cf8-a97a-9d8aad049b4e">10,099,000</ix:nonFraction> as of April&#160;30, 2023, January&#160;31, 2023 and April&#160;30, 2022, respectively, are needed for federal deferred tax assets and certain state net operating loss carryforwards to reduce the carrying amount of deferred tax assets to an amount that is more likely than not to be realized.  </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%">For the three months ended April&#160;30, 2023 and 2022, the effective income tax rates were <ix:nonFraction unitRef="number" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjk4NQ_b7e042cc-a9ff-45bc-8db4-674320f0744f">23.5</ix:nonFraction>% and <ix:nonFraction unitRef="number" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="3" name="us-gaap:EffectiveIncomeTaxRateContinuingOperations" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjk5Mg_3140444b-f441-4cdb-a1d9-82b5079d51aa">5.3</ix:nonFraction>%, respectively. The change in effective tax rates for the three months ended April&#160;30, 2023 was primarily due to the change in forecasted mix of income before federal and state income taxes and estimated permanent differences.  The effective tax rate for the three months </span></div></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%"><ix:continuation id="ic3fda4c35378429a8cfbd95719ef4d6a" continuedAt="ideda64f2d6224c8cb95c4f8a4e6424c9">ended April&#160;30, 2022 was primarily due to the recording of a valuation allowance needed for federal deferred tax assets and certain state net operating loss carryforwards. </ix:continuation></span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"><ix:continuation id="ideda64f2d6224c8cb95c4f8a4e6424c9">The January 31, 2018 and subsequent fiscal years remain open for examination by the IRS and state tax authorities.  The Company is not currently under any state examination.</ix:continuation> </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> </span></div><div id="i9f22950a62b445c58886781e487ff8d6_70"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 9. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:EarningsPerShareTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RleHRyZWdpb246YzVhNzRhMTEyNWY1NDFkMzliNzgwYjEzMWZiMTE5YjZfNDIz_3caa91fe-ab18-4e56-8d35-2adad6ddecdf" continuedAt="idc4b3f6a874d4f9bba59d0bd75e9df84" escape="true">Net Loss per Share</ix:nonNumeric></span></div><ix:continuation id="idc4b3f6a874d4f9bba59d0bd75e9df84"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic net loss per share is calculated by dividing net loss by the weighted-average number of common shares outstanding.  The following table sets forth the computation of basic net loss per share:</span></div><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RleHRyZWdpb246YzVhNzRhMTEyNWY1NDFkMzliNzgwYjEzMWZiMTE5YjZfNDIx_946bc7b8-eff3-4b45-80e5-0e24bd7258d1" escape="true"><div style="margin-bottom:6pt;margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"><tr><td style="width:1.0%"></td><td style="width:60.586%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.686%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.539%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.689%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(In thousands, except per share data)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNC0xLTEtMS00ODUwMg_d4157ad9-e220-431b-b46f-b2715ef0e411">1,442</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" sign="-" name="us-gaap:NetIncomeLoss" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNC0zLTEtMS00ODUwMg_baec872c-f6a5-4419-8ab7-f95aa6f539d6">5,084</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares of common stock outstanding</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNi0xLTEtMS00ODUwMg_079bd9b3-7dad-4415-8b9e-ffceb35c016f"><ix:nonFraction unitRef="shares" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNi0xLTEtMS00ODUwMg_a999b2d3-49f6-4cd0-a4fb-e1ec29868926">16,211</ix:nonFraction></ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNi0zLTEtMS00ODUwMg_9b19e12c-dec2-424a-a2bb-cda0cb3c3db8">16,033</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dilutive effect of common stock equivalents from equity incentive plans (a)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNy0xLTEtMS00ODUwMg_4a3709b6-fd5a-4499-bdd1-ad41ad507086">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNy0zLTEtMS00ODUwMg_6e2804e7-f562-454d-9ded-a6abc2ded0c0">&#8212;</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Totals</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfOC0xLTEtMS00ODUwMg_399486bd-f16f-42d9-abe4-abf2c9851d6a">16,211</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="shares" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding" format="ixt:num-dot-decimal" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfOC0zLTEtMS00ODUwMg_605bc589-44a0-4b58-acb4-257d05dbf5c8">16,033</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss per share - basic</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="2" sign="-" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfMTAtMS0xLTEtNDg1MDI_7a3f42f9-f18d-4be3-8021-4820faff25ea">0.09</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="2" sign="-" name="us-gaap:EarningsPerShareBasic" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfMTAtMy0xLTEtNDg1MDI_f2165269-cb38-4100-8d0b-6dd8ac1d310a">0.32</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss per share - diluted</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="2" sign="-" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfMTEtMS0xLTEtNDg1MDI_0b172579-1958-4f54-995d-8066625cb0e3">0.09</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usdPerShare" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="2" sign="-" name="us-gaap:EarningsPerShareDiluted" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfMTEtMy0xLTEtNDg1MDI_2b51df7c-bac2-4ff5-a32e-7d5a1ac3022b">0.32</ix:nonFraction>)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="margin-bottom:6pt;margin-top:11pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">(a)  At April&#160;30, 2023 and 2022, approximately <ix:nonFraction unitRef="shares" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="virc:IncrementalCommonSharesExcludedToDilutiveEffect" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RleHRyZWdpb246YzVhNzRhMTEyNWY1NDFkMzliNzgwYjEzMWZiMTE5YjZfNDM5ODA0NjUxMjY3OQ_8124fdd9-3c33-4da2-9811-858d09caea87">85,000</ix:nonFraction> and <ix:nonFraction unitRef="shares" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="virc:IncrementalCommonSharesExcludedToDilutiveEffect" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RleHRyZWdpb246YzVhNzRhMTEyNWY1NDFkMzliNzgwYjEzMWZiMTE5YjZfNDM5ODA0NjUxMjY4Nw_d0ddaaf7-ef68-4b84-80d0-c6408b7fefe6">169,000</ix:nonFraction> shares of common stock equivalents were excluded from the computation of diluted net loss per share, as the effect would be anti-dilutive since the Company reported a net loss.</span></div></ix:nonNumeric></ix:continuation><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_73"></div><div style="-sec-extract:summary;margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 10. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfMjk1MQ_03f9dfde-ea16-4bbf-9ace-67d695263689" continuedAt="i2a5fa7e6fc6d4d5087047e489b5de223" escape="true">Stock-Based Compensation </ix:nonNumeric></span></div><ix:continuation id="i2a5fa7e6fc6d4d5087047e489b5de223" continuedAt="i3654894073c8404f9eed1d594e7cb382"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Stock Incentive Plan</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's two stock incentive plans are the 2019 Omnibus Equity Incentive Plan (the &#8220;2019 Plan&#8221;) and the 2011 Stock Incentive Plan (the &#8220;2011 Plan&#8221;). The 2011 Plan expired in 2021 and no new award may be made under the 2011 Plan.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Under the 2019 Plan, the Company may grant an aggregate of up to <ix:nonFraction unitRef="shares" contextRef="ic51b052edc494cff983b99a420d39ac3_I20230430" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfMjgy_3e110ad0-0963-4aca-9270-cb635fe96187">1,000,000</ix:nonFraction> shares to its employees in the form of restricted stock units and non-employee directors in the form of restricted stock awards.  Restricted stock units and awards granted under the 2019 Plan are expensed ratably over the vesting period of the awards. The Company determines the fair value of its restricted stock units or awards and related compensation expense as the difference between the market value of the units or awards on the date of grant less the exercise price of the units or awards granted.  During the three-month period ended April&#160;30, 2023, the Company granted <ix:nonFraction unitRef="shares" contextRef="i3c3e40b19dff4d9b80a30d55daa278cc_D20230201-20230430" decimals="0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfODQz_ccc64da7-e94e-4225-997f-bddb21e03bb7">0</ix:nonFraction> awards, vested <ix:nonFraction unitRef="shares" contextRef="i3c3e40b19dff4d9b80a30d55daa278cc_D20230201-20230430" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfODYx_201534fb-8d83-449c-9af7-8750177ccfa3">0</ix:nonFraction> shares according to their terms and forfeited <ix:nonFraction unitRef="shares" contextRef="i3c3e40b19dff4d9b80a30d55daa278cc_D20230201-20230430" decimals="INF" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfOTEw_193d96b4-2839-4ac4-9a1a-61ace2a8a872">0</ix:nonFraction> shares under the 2019 Plan.  As of April&#160;30, 2023, there were approximately <ix:nonFraction unitRef="shares" contextRef="ic51b052edc494cff983b99a420d39ac3_I20230430" decimals="0" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfOTc3_39a3e896-1352-42d5-ba46-9928dd54310b">608,435</ix:nonFraction> shares available for future issuance under the 2019 Plan. </span></div><div><span><br/></span></div><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfNDM5ODA0NjUxNzE5MA_9c871119-fb08-426f-b32f-81dbce4623b2" escape="true"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The following table summarizes the stock-based compensation expense related to restricted stock awards recognized in the Company's statement of operations for the three months ended April&#160;30, 2023 and 2022:</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:54.455%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.864%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:1.408%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.838%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of goods sold</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="idce494d0db0c4f8489d6ce35a8ab9ac9_D20230201-20230430" decimals="-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfMy0yLTEtMS01MjY0Nw_be3e330d-c83c-4a1e-a9f9-86bcdc6ef817">28</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i11b048777b3e42b1866ea0d27d2722d7_D20220201-20220430" decimals="-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfMy00LTEtMS01MjY0Nw_9714947a-39d7-45dc-8422-6aaae4cd9390">55</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i9874a256218949168c3a713134d081a8_D20230201-20230430" decimals="-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfNC0yLTEtMS01MjY0Nw_e2028261-1974-4f54-b062-356de0da27f8">75</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ie7278e4f07694d6b92aa5b3f38b98f5c_D20220201-20220430" decimals="-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfNC00LTEtMS01MjY0Nw_ac7d1bd6-8fc4-4c5b-ae39-4273318a835c">198</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stock-based compensation expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfNi0yLTEtMS01NTI0Mw_e93d387e-02e2-41a8-86b1-a7706d915056">103</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfNi00LTEtMS01NTI0Mw_9c74e4e4-e414-46a8-94c8-cfb84cdd4111">253</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">14</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i3654894073c8404f9eed1d594e7cb382">As of April&#160;30, 2023, there was $<ix:nonFraction unitRef="usd" contextRef="ic58191435f9940b8aa96e24508179cf1_I20230430" decimals="-3" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfMjc1Nw_6eb3e1c8-ac74-4a9d-b832-94cb8a7d6fc8">446,000</ix:nonFraction> of unrecognized compensation expense related to unvested restricted stock units and/or awards, which is expected to be recognized over a weighted average period of approximately <ix:nonNumeric contextRef="if7c191c5122144d6bd53e87dd766024d_D20230201-20230430" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" format="ixt-sec:duryear" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfMjkzOA_06e23dbe-0456-4aac-918d-ff5dc3eb9935">1</ix:nonNumeric> year.</ix:continuation>  </span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_76"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 11. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:PostemploymentBenefitsDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMjE0Mg_630282bf-6497-4be9-b744-5fcd3e95a3a6" continuedAt="ibef40ce9c86f4f31b7bbe2745cf85a6d" escape="true">Retirement Plans</ix:nonNumeric></span></div><ix:continuation id="ibef40ce9c86f4f31b7bbe2745cf85a6d" continuedAt="if641e2dc604f47cfa265ee2dfcd1ebca"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company and its subsidiaries cover certain employees under a noncontributory defined benefit retirement plan, entitled the Virco Employees&#8217; Retirement Plan (the &#8220;Pension Plan&#8221;). As more fully described in the Annual Report on Form 10-K, benefit accruals under the Employees Retirement Plan were frozen effective December&#160;31, 2003.  There is no service cost incurred under this plan.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company also provides a supplementary retirement plan for certain key employees, the VIP Retirement Plan (the &#8220;VIP Plan&#8221;).  As more fully described in the Annual Report on Form 10-K for the year ended January&#160;31, 2023, benefit accruals under the VIP Plan were frozen since December&#160;31, 2003.  There is no service cost incurred under the VIP Plan.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes t<ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMjEzMQ_3617c891-eb0d-42fc-bc04-f3d580601d7e" continuedAt="i7c1b6ee2835341baa0d285262015bf83" escape="true">he net periodic pension cost for the Pension Plan and the VIP Plan for the three months ended April&#160;30, 2023 and 2022:</ix:nonNumeric></span></div><div style="margin-bottom:6pt;margin-top:11pt"><ix:continuation id="i7c1b6ee2835341baa0d285262015bf83"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.538%"><tr><td style="width:1.0%"></td><td style="width:60.175%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.742%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.838%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.745%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Service cost</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNC0xLTEtMS00ODUwMg_c32ac4db-4699-401e-a066-c5b05f2c426f">&#8212;</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430" decimals="-3" name="us-gaap:DefinedBenefitPlanServiceCost" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNC0zLTEtMS00ODUwMg_2457ac93-9dd1-46b6-aa10-aaa2f61726e2">&#8212;</ix:nonFraction></span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNS0xLTEtMS00ODUwMg_8ff3773d-56d1-4e31-a9b3-6cca302ccb21">360</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430" decimals="-3" name="us-gaap:DefinedBenefitPlanInterestCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNS0zLTEtMS00ODUwMg_d007337e-94fd-4854-afed-510e4feba8d8">298</ix:nonFraction></span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected return on plan assets</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNi0xLTEtMS00ODUwMg_154d7bd0-d89e-4980-9ca2-43a07cea998f">199</ix:nonFraction>)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430" decimals="-3" name="us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNi0zLTEtMS00ODUwMg_97f11d95-1193-42fa-be88-920c6ffb5769">237</ix:nonFraction>)</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Plan settlement</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNy0xLTEtMS00ODUwMg_1bb2579e-8748-4958-9b35-70b514faf143">&#8212;</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430" decimals="-3" name="us-gaap:DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNy0zLTEtMS00ODUwMg_63813fb7-59c5-4355-bfec-4a64ade1c4a1">&#8212;</ix:nonFraction></span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of prior service cost</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfOC0xLTEtMS00ODUwMg_3bf0f9dc-e167-471b-a7dc-591e7bf15811">&#8212;</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430" decimals="-3" name="us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfOC0zLTEtMS00ODUwMg_62522cf7-8ccb-43fa-81c8-64f33ef493a3">&#8212;</ix:nonFraction></span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized net actuarial loss</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430" decimals="-3" name="virc:DefinedBenefitPlanRecognizedNetActuarialGainLoss" format="ixt:fixed-zero" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfOS0xLTEtMS00ODUwMg_f22bb4b7-5b5f-4c67-96e0-6b6252af7c8b">&#8212;</ix:nonFraction></span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430" decimals="-3" sign="-" name="virc:DefinedBenefitPlanRecognizedNetActuarialGainLoss" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfOS0zLTEtMS00ODUwMg_49cdf1fe-ff10-4c12-8fca-4f813e511d46">134</ix:nonFraction></span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Benefit cost</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfMTAtMS0xLTEtNDg1MDI_703ff01f-42c4-4522-9c81-48fb8f00f59d">161</ix:nonFraction></span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430" decimals="-3" name="us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfMTAtMy0xLTEtNDg1MDI_9a802d6f-27e1-46f8-9c9f-480264601618">195</ix:nonFraction></span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></ix:continuation></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">401(k) Retirement Plan</span></div></ix:continuation><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="if641e2dc604f47cfa265ee2dfcd1ebca">The Company&#8217;s retirement plan, which covers all U.S. employees, allows participants to defer from <ix:nonFraction unitRef="number" contextRef="ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430" decimals="2" name="virc:DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTU3Ng_d5e6626b-0bd6-4684-9632-ee4d9fceaf43">1</ix:nonFraction>% to <ix:nonFraction unitRef="number" contextRef="ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430" decimals="INF" name="us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" scale="-2" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTU4Mg_5f57beb6-7082-42c0-973f-373e2ceb0f62">75</ix:nonFraction>% of their eligible compensation through a 401(k)-retirement program.  The plan includes Virco stock as one of the investment options.  At April&#160;30, 2023 and 2022, the plan held <ix:nonFraction unitRef="shares" contextRef="i0afd8d5b22d746a699be9a50df797a36_I20230430" decimals="INF" name="virc:DefinedContributionPlanNumberOfCommonSharesHeld" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTc0Nw_520ca33c-5481-4c7b-977f-a73cbaed4c77">1,320,482</ix:nonFraction> shares and <ix:nonFraction unitRef="shares" contextRef="iddb903a8928b42768b5ce48dbcfc0fa8_I20220430" decimals="INF" name="virc:DefinedContributionPlanNumberOfCommonSharesHeld" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTc2MQ_86903df1-2daf-44f4-8bd6-81a31d0bb8cd">1,165,985</ix:nonFraction> shares of Virco stock, respectively.  For the three months ended April&#160;30, 2023 and 2022, the compensation costs incurred for employer match, which is paid in the form of Company stock, was $<ix:nonFraction unitRef="usd" contextRef="ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430" decimals="-3" name="us-gaap:DefinedBenefitPlanContributionsByEmployer" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTk0MA_899e4a9d-8aef-4278-96a9-6d7bf46c35fc">403,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="iae9a75dced8442fea285b7df23400c30_D20220201-20220430" decimals="-3" name="us-gaap:DefinedBenefitPlanContributionsByEmployer" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTk0Nw_3d95ec5c-1a77-4cdd-aa32-8fe27d52586c">330,000</ix:nonFraction> respectively.</ix:continuation>   </span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_79"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 12. <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:ProductWarrantyDisclosureTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RleHRyZWdpb246YjhhYmVjYTMyODM2NGNkZjk1Njg3Y2UzNGY5NjM4NTBfMTA0Ng_accf60f6-1ebf-4f14-96a2-c9494dbee4c5" continuedAt="iba0132431ce046719b9c4e7a574317bb" escape="true">Warranty Accrual</ix:nonNumeric></span></div><ix:continuation id="iba0132431ce046719b9c4e7a574317bb"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company provides a warranty against all substantial defects in material and workmanship. The standard warranty offered on products sold through January 31, 2013 is <ix:nonNumeric contextRef="i9e44ea096ef14842a0c5fcb454869591_D20230201-20230430" name="virc:ProductWarranty" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RleHRyZWdpb246YjhhYmVjYTMyODM2NGNkZjk1Njg3Y2UzNGY5NjM4NTBfMTk5_e8a50dd9-c527-48e9-add3-fdf634e906cf">ten years</ix:nonNumeric>. Effective February 1, 2014 the Company modified its warranty to a limited lifetime warranty. The warranty effective February 1, 2014, is not anticipated to have a significant effect on warranty expense. Effective January 1, 2017, the Company modified the standard warranty offered on products sold after January 1, 2017 to provide specific warranty periods by product component, with no warranty period longer than <ix:nonNumeric contextRef="i9e44ea096ef14842a0c5fcb454869591_D20230201-20230430" name="virc:ProductWarranty" format="ixt-sec:durwordsen" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RleHRyZWdpb246YjhhYmVjYTMyODM2NGNkZjk1Njg3Y2UzNGY5NjM4NTBfNjE3_e8a50dd9-c527-48e9-add3-fdf634e906cf">ten years</ix:nonNumeric>. The Company&#8217;s warranty is not a guarantee of service life, which depends upon events outside the Company&#8217;s control and may be different from the warranty period. The Company accrues an estimate of its exposure to warranty claims based upon both product sales data and an analysis of actual warranty claims incurred.  </span></div><ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RleHRyZWdpb246YjhhYmVjYTMyODM2NGNkZjk1Njg3Y2UzNGY5NjM4NTBfMTA1Mw_657ab464-ba97-455b-8843-f6b0ada1c04a" escape="true"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of the Company&#8217;s warranty-claim activity for the three months ended April&#160;30, 2023 and 2022:</span></div><div style="margin-bottom:6pt;margin-top:11pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.321%"><tr><td style="width:1.0%"></td><td style="width:59.176%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.378%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.566%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.380%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfMy0xLTEtMS00ODUwMg_98b50e8e-5441-4f9b-90f4-4d1aa2e9a944">600</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i35924208d3d746c491b0ea2b2e4d7e29_I20220131" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfMy0zLTEtMS00ODUwMg_701dfd20-6904-4f03-93cc-999ceea87b11">600</ix:nonFraction>&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNC0xLTEtMS00ODUwMg_54455d9d-34ab-4d2a-ac52-db55599ee1f9">41</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNC0zLTEtMS00ODUwMg_47f29dd5-d59b-48a9-ae9b-4168e9d67c84">34</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs incurred</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="-3" name="us-gaap:ProductWarrantyExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNS0xLTEtMS00ODUwMg_8d759edd-9930-4e08-b400-529a95016334">41</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="-3" name="us-gaap:ProductWarrantyExpense" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNS0zLTEtMS00ODUwMg_12563633-7210-4811-ac02-505ecb32c283">34</ix:nonFraction>)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ending balance</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNi0xLTEtMS00ODUwMg_99fc22c1-24da-457a-a2e6-19aee32701cb">600</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"><ix:nonFraction unitRef="usd" contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430" decimals="-3" name="us-gaap:ProductWarrantyAccrual" scale="3" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNi0zLTEtMS00ODUwMg_017b4e43-883b-44b0-9f36-36e1d68287b6">600</ix:nonFraction>&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div></ix:nonNumeric></ix:continuation><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">15</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_82"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-top:14pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 13.  <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:LossContingencyDisclosures" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfOTI4_a32d93ba-2f83-4157-8261-62c2f9746246" continuedAt="i86b309d54b4b46fc8e7b0b4ddb97b8ea" escape="true">Contingencies</ix:nonNumeric></span></div><div><span><br/></span></div><ix:continuation id="i86b309d54b4b46fc8e7b0b4ddb97b8ea"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has a self-insured retention for product losses up to $<ix:nonFraction unitRef="usd" contextRef="i7c87a2799d93477db744937a9581ada5_I20230430" decimals="INF" name="virc:SelfInsuranceRetention" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfOTc_baa452f3-c0b9-4a25-8f03-c6f9da9189f7">250,000</ix:nonFraction> per occurrence, workers&#8217; compensation liability losses up to $<ix:nonFraction unitRef="usd" contextRef="i50fc8f506f0e4aa5b2177398ab79ad82_I20230430" decimals="INF" name="virc:SelfInsuranceRetention" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfMTYx_a2e6095b-6eb9-43a1-b2b3-ee9a2812f9c7">250,000</ix:nonFraction> per occurrence, general liability losses up to $<ix:nonFraction unitRef="usd" contextRef="i1e68fc9de49749c2bdd567007cdbb5c2_I20230430" decimals="INF" name="virc:SelfInsuranceRetention" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfMjEx_99c5b664-0340-41f3-9e36-1414a459e56a">50,000</ix:nonFraction> per occurrence and automobile liability losses up to $<ix:nonFraction unitRef="usd" contextRef="ic0190406847046579553da1fad6bd7c0_I20230430" decimals="INF" name="virc:SelfInsuranceRetention" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfMjY3_faaaf4f0-3dcc-46ae-be48-f2eaae8eae5b">50,000</ix:nonFraction> per occurrence. The Company has purchased insurance to cover losses in excess of the self-insurance retention or deductible up to a limit of $<ix:nonFraction unitRef="usd" contextRef="i72ec33ce05b649ccb94d1610bf10ad39_I20230430" decimals="INF" name="virc:SelfInsuranceRetention" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfNDEx_91fc8334-23b1-46f9-ac3d-96e345476650">30,000,000</ix:nonFraction>. The Company has obtained an actuarial estimate of its total expected future losses for liability claims and recorded a liability equal to the net present value.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company and its subsidiaries are defendants in various legal proceedings resulting from operations in the normal course of business. It is the opinion of management, in consultation with legal counsel, that the ultimate outcome of all such matters will not materially affect the Company&#8217;s financial position, results of operations or cash flows.</span></div></ix:continuation><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_85"></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 14.  <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="virc:DeliveryCostsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84NS9mcmFnOjJjNGEwYjY2OGIzNDQwOGM4MzcxODE5MGEzOWIzZjEyL3RleHRyZWdpb246MmM0YTBiNjY4YjM0NDA4YzgzNzE4MTkwYTM5YjNmMTJfNTIz_3b1c13ac-f676-45d4-bb7b-e6ead9d65fd1" continuedAt="i06514c8c415e49cbb2aa6f154fa591e6" escape="true">Delivery Costs</ix:nonNumeric></span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"><ix:continuation id="i06514c8c415e49cbb2aa6f154fa591e6">For the three months ended April&#160;30, 2023 and 2022, shipping and classroom delivery costs of approximately $<ix:nonFraction unitRef="usd" contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" decimals="0" name="virc:ShippingAndClassroomDeliveryCosts" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84NS9mcmFnOjJjNGEwYjY2OGIzNDQwOGM4MzcxODE5MGEzOWIzZjEyL3RleHRyZWdpb246MmM0YTBiNjY4YjM0NDA4YzgzNzE4MTkwYTM5YjNmMTJfMTI2_4649827f-9506-4c60-a80c-0ee8871fa48c">3,343,000</ix:nonFraction> and $<ix:nonFraction unitRef="usd" contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430" decimals="0" name="virc:ShippingAndClassroomDeliveryCosts" format="ixt:num-dot-decimal" scale="0" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84NS9mcmFnOjJjNGEwYjY2OGIzNDQwOGM4MzcxODE5MGEzOWIzZjEyL3RleHRyZWdpb246MmM0YTBiNjY4YjM0NDA4YzgzNzE4MTkwYTM5YjNmMTJfMTMz_ed6ed595-7d4b-438a-9c4b-5c9cc6437187">3,254,000</ix:nonFraction>, respectively, were included in selling, general and administrative expenses in the accompanying condensed consolidated statements of operations.</ix:continuation></span></div><div style="margin-top:9pt"><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_88"></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 15.  <ix:nonNumeric contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430" name="us-gaap:SubsequentEventsTextBlock" id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84OC9mcmFnOmU2ODU2ZWQwMWY0MTRlNmE5OWIzNzA5MGQxMzQzMzg3L3RleHRyZWdpb246ZTY4NTZlZDAxZjQxNGU2YTk5YjM3MDkwZDEzNDMzODdfMzk_67b0273e-021d-4e8c-ba23-f48feaa1f25a" continuedAt="i38d2850280fe4bf5934b6bbab487ec73" escape="true">Subsequent Events</ix:nonNumeric></span></div><div><span><br/></span></div><div><ix:continuation id="i38d2850280fe4bf5934b6bbab487ec73"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On May 19, 2023, the Company executed Amendment No. 3 to the Restated Credit Agreement, with an effective date of May 5, 2023. See </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Note 7</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">.</span></ix:continuation></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">16</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_91"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item 2. Management's Discussion and Analysis of Financial Condition and Results of Operations</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_94"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Results of Operations </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Overview</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The results of operations for the three-month period ended April 30, 2023 and the comparable period ended April 30, 2022 have been impacted by economic conditions driven by the COVID-19 pandemic, global supply chain disruptions and global conflict.  The impact of the supply chain disruptions were much less severe during the current year compared to the prior year.  Typically, the Company has an exceptionally seasonal annual cycle where approximately 50% of sales occur in the months of June, July and August.  Orders received from customers follow a similar seasonal cycle, with the bulk of orders arriving approximately 4-6 weeks preceding the selling season.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">For the three-month period ended April 30, 2023, management believes that the traditional seasonal cycle and the Company&#8217;s ability to service that seasonal cycle has returned to normal.  During the three-month period ended April 30, 2023 the Company experienced a 10.4% increase in orders compared to the same period last year.   In addition, the Company started the year with a backlog of unshipped sales orders that was nearly $18 million higher than the prior year.  On April 30, 2023 the Company&#8217;s backlog of unshipped sales orders was approximately $104.6 million compared to $85.7 million on April 30, 2022.  The Company believes that a significant majority of the sales order backlog will be delivered during June, July, and August of the current year.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">As discussed in the Risk Factors section of the Company&#8217;s Form 10-K for the fiscal year ended January 31, 2023, the Company utilizes one nationwide contract to price a significant portion of our orders.  This contract/price list determines selling prices for goods and services for periods of one year and occasionally longer.  Due to the current volatile nature of commodity and energy prices in addition to general inflation, the Company has negotiated the ability to increase prices for orders received after July 1 of each contract year in addition to the annual January 1price increase.  There is typically a several months' time lag between raising prices on orders and realizing the increase in sales revenue.  </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Sales for the first quarter ended April 30, 2022 consisted substantially of orders received prior to the January 1, 2022 price increase, causing gross margin of sales during that quarter to be lower than desirable.  Sales of the quarter ended April 30, 2023 benefited from the effect of two price increases, one each at January 1, 2022 and July 1, 2022.  The cumulative impact of the two price increases favorably impacted operating results for the three months ended April 30, 2023.   </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Although conditions have improved compared to the prior year, financing challenges resulting from the recent bank failures and credit tightening and supply chain disruptions from international sources &#8211; primarily China &#8211; continue to adversely affect operations and the competitive landscape.  Because the Company has maintained its domestic factories, management believes that the Company will be less vulnerable to international supply chain disruption compared to competitors that source finished goods overseas, but the Company will still be affected by these international events.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Virco does not deliver furniture to new schools until the customer has an occupancy certificate.  Supply chain disruptions in the construction industry which may delay the completion of new schools did not significantly impact sales volume during the quarter ended April 30, 2023, but may impact the timing of sales during the balance of the year, possibly causing deliveries of furniture scheduled for the second quarter ending July 31, 2023 to occur in the subsequent quarter.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:112%">Three Months Ended April 30, 2023</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">For the three months ended April 30, 2023, the Company incurred a pre-tax loss of $1,886,000 on sales of $34,943,000 compared to a pre-tax loss of $5,366,000 on sales of $32,084,000 in the prior year.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Sales increased by approximately $2,859,000 or 8.9%, compared to the same prior year period.  The increase was attributable to an increase in beginning of year sales backlog, increased first quarter orders, and increased selling prices.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Gross margin for the quarter ended April 30, 2023 was 37.8% of sales compared to 30.3% in the prior year.  In order to recover the increased cost of materials and labor incurred in the fiscal year ended January 31, 2022, the Company raised prices for all orders received after January 1, 2022.  The impact of the price increase did not fully affect sales for the quarter ended April 30, 2022.  The three-month period ended April 30, 2023 benefited from the cumulative effect of price increases implemented January 1, 2022 and July 1, 2022, returning margins to profitable full year levels. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Selling, general and administrative expenses (SG&amp;A) for the three months ended April 30, 2023 increased by approximately $63,000 compared to the same period last year, but decreased as a percentage of sales to 41.5% compared to 45.0% in the prior year.  The increase in selling, general and administrative expenses was attributable in part to increased variable freight and </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">17</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">service expense and by increased variable selling expenses. Because a significant portion of general and administrative expenses do not fluctuate with sales volume, SG&amp;A declined as a percentage of sales. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">During the fiscal year ended January 31, 2023 the Company purchased equity securities held in a Rabbi Trust to fund benefits under the VIP Pension Plan.  The Company benefited from $299,000 of unrealized gains during the three months ended April 30, 2023.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The primary component of pension expense relates to the amortization of AOCI.  In the year ended January 31, 2022, the Company benefited from favorable investment returns on Plan assets and reduced measurement of benefit obligations due to increased discount rates, both of which favorably impacted AOCI.  Because beginning of the year AOCI was low for the three-month periods ended April 30, 2023 and 2022, the quarterly amortization of AOCI was reduced compared to prior years. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Interest expense increased by $285,000 for the three months ended April 30, 2023 compared to the same period last year.  The increase was primarily attributable to an increase in the amount borrowed to finance seasonal working capital and an increase in the interest rate.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">For the three months ended April 30, 2023 and 2022, the effective income tax rates were 23.5% and 5.3%, respectively. The change in effective tax rates for the three months ended April 30, 2023 was primarily due to the change in forecasted mix of income before federal and state income taxes and estimated permanent differences.  The lower effective tax rate in prior year was due primarily to the recording of a valuation allowance needed for federal deferred tax assets and certain state net operating loss carryforwards.</span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_97"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Liquidity and Capital Resources</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The market for education furniture is extremely seasonal and approximately 50% of the Company's annual sales volume is shipped in the months of June through August of each year.  The Company traditionally manufactures large quantities of inventory during the first and second quarters of each fiscal year in anticipation of seasonally high summer shipments.  In addition, the Company finances a large balance of accounts receivable during the peak season.  As discussed above, during the fiscal year ended January 31, 2022, the Company experienced severe supply chain disruptions and labor availability and delivered orders later in the year.  In the fiscal year ended January 31, 2023, the supply chain disruptions abated and the Company started to return to the more traditional seasonal cycle.  The Company believes that traditional seasonal sales cycle has substantially returned for the quarter ended April 30, 2023, and will continue through the fourth quarter ending January 31, 2024.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventory increased by $19,343,000 at April 30, 2023, compared to April 30, 2022.  The entire increase in inventory was attributable to increased quantity.  The cost and valuation of inventory was stable. The quantity of inventory was increased in response to a material increase in unshipped sales orders (backlog).  The majority of the backlog is scheduled for delivery during the traditional seasonal peak from June through August.  The increase in inventory was financed by increased borrowing under the Company&#8217;s line of credit with PNC Bank and increased vendor credit, which traditionally increases with increased purchases of materials.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrual basis capital expenditures for the three months ended April 30, 2023 were $1,300,000 compared to $627,000 for the same period last year. Capital expenditures are being financed through the Company's credit facility with PNC Bank and operating cash flow and restricted to not exceed $8,000,000 per year by covenant.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company was in violation of its financial covenants under the Restated Credit Agreement as of January 31, 2022, due to an increase in the Company&#8217;s net loss primarily attributable to the effects of supply chain disruptions and labor shortages.  On April 15, 2022, the Company entered into Amendment No. 2 to the Revolving Credit and Security Agreement with PNC Bank, which implemented certain changes to the Company&#8217;s credit facility with PNC Bank, including the extension of the final maturity date of the facility to April 15, 2027.  Subsequent to the period ended April 30, 2023, the Company entered into Amendment No. 3 which increased the borrowing limit to $72.5 million during the peak seasonal period from June through August 2023.  See </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Note 7</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. Debt of Notes to Unaudited Consolidated Financial Statements under Item 1 of this Quarterly Report on Form 10-Q.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Based on the Company&#8217;s current projections, raw material costs and its ability to introduce price increases, management believes it will maintain compliance with its financial covenants under the Credit Agreement, although risks and uncertainties remain, such as economic conditions, changing raw material costs and supply chain challenges.  The Company was in compliance with its debt covenants as of April 30, 2023.  </span></div><div><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">18</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company believes that cash flows from operations, together with the Company's unused borrowing capacity with PNC Bank will be sufficient to fund the Company's debt service requirements, capital expenditures and working capital needs for the next twelve months. </span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_100"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Off Balance Sheet Arrangements</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_103"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Critical Accounting Policies and Estimates</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company's critical accounting policies are outlined in its Annual Report on Form 10-K for the fiscal year ended January&#160;31, 2023.</span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_106"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Forward-Looking Statements</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">From time to time, including in this Quarterly Report on Form 10-Q for the quarterly period ended April&#160;30, 2023, the Company or its representatives have made and may make forward-looking statements, orally or in writing. Such forward-looking statements may be included in, without limitation, reports to stockholders, press releases, oral statements made with the approval of an authorized executive officer of the Company and filings with the Securities and Exchange Commission ("SEC").  The words or phrases &#8220;anticipates,&#8221; &#8220;expects,&#8221; &#8220;will continue,&#8221; &#8220;believes,&#8221; &#8220;estimates,&#8221; &#8220;projects,&#8221; or similar expressions are intended to identify &#8220;forward-looking statements&#8221; within the meaning of the Private Securities Litigation Reform Act of 1995.  The results contemplated by the Company's forward-looking statements are subject to certain risks and uncertainties that could cause actual results to vary materially from anticipated results, including without limitation, availability of funding for educational institutions, availability and cost of materials, availability and cost of labor, demand for the Company's products, competitive conditions affecting selling prices and margins, capital costs and general economic conditions. Such risks and uncertainties are discussed in more detail in the Company's Form 10-K for the fiscal year ended January&#160;31, 2023, including under the caption "Risk Factors".</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company's forward-looking statements represent its judgment only on the dates such statements were made. By making any forward-looking statements, the Company assumes no duty to update them to reflect new, changed or unanticipated events or circumstances.</span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_109"></div><div style="margin-bottom:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;3. Quantitative and Qualitative Disclosures about Market Risk</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company is a smaller reporting company as defined by Rule 12b-2 of the Exchange Act, and is therefore not required to provide the information under this item.</span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_112"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;4. Controls and Procedures</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Evaluation of Disclosure Controls and Procedures</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company carried out an evaluation, under the supervision and with the participation of the Company's management, including its Principal Executive Officer along with its Principal Financial Officer, of the effectiveness of the design and operation of our disclosure controls and procedures (as defined in Rules 13a-15(e) under the Securities Exchange Act of 1934 (&#8220;Exchange Act&#8221;) as of April&#160;30, 2023. Based upon the foregoing, the Company's Principal Executive Officer along with the Company's Principal Financial Officer concluded that the Company's disclosure controls and procedures as of such date were effective to ensure that the information required to be disclosed in the Company&#8217;s Exchange Act reports is recorded, processed, summarized and reported within the time periods specified in the SEC&#8217;s rules and forms, and that such information is accumulated and communicated to Company management, including its Principal Executive Officer and Principal Financial Officer, as appropriate, to allow timely decisions regarding required disclosure. In designing and evaluating the disclosure controls and procedures, Company management recognizes that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving the desired control objectives, and management necessarily is required to apply its judgment in evaluating the cost-benefit relationship of possible controls and procedures.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Changes in Internal Control Over Financial Reporting</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company carried out an evaluation, under the supervision and with the participation of the Company's management, including its Principal Executive Officer along with its Principal Financial Officer</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"> of the effectiveness of the design and operation of disclosure controls and procedures. Based upon the foregoing, the Company's Principal Executive Officer along with the Company's Principal Financial Officer concluded that the Company's disclosure controls and procedures (as such term </span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">19</span></div></div></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">is defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, as amended) were effective as of the end of the period covered by this Quarterly Report on Form 10-Q.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%">There have been no changes in the Company's internal control over financial reporting during the fiscal quarter covered by this quarterly report on Form 10-Q that have materially affected, or are reasonably likely to materially affect, its internal control over financial reporting.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">20</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_115"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">PART II &#8212; Other Information</span></div><div style="text-align:center"><span><br/></span></div><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Virco Mfg. Corporation</span></div><div style="text-align:center"><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_118"></div><div style="margin-top:13.5pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;1. Legal Proceedings</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is a party to various legal actions arising in the ordinary course of business which, in the opinion of the Company, are not material in that management either expects that the Company will be successful on the merits of the pending cases or that any liabilities resulting from such cases will be substantially covered by insurance.  While it is impossible to estimate with certainty the ultimate legal and financial liability with respect to these actions, management believes that the aggregate amount of such liabilities will not be material to the results of operations, financial position, or cash flows of the Company.</span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_121"></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;1A. Risk Factors</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">You should carefully consider and evaluate the information in this Quarterly Report and the risk factors set forth under the caption &#8220;Item 1A. Risk Factors&#8221; in our Annual Report on Form 10-K for the fiscal year ended January&#160;31, 2023 (the &#8220;Form 10-K&#8221;), which was filed with the SEC on April 28, 2023.  The risk factors associated with our business have not materially changed compared to the risk factors disclosed in the Form 10-K.  </span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_124"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;2. <a style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;text-decoration:none" href="#i9f22950a62b445c58886781e487ff8d6_124">Unregistered Sales of Equity Securities and Use of Proceeds</a></span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_127"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;3. Defaults Upon Senior Securities </span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_130"></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;4. Mine Safety Disclosures </span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Not applicable.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_133"></div><div style="margin-bottom:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;5. Other Information </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">None.</span></div><div><span><br/></span></div><div id="i9f22950a62b445c58886781e487ff8d6_136"></div><div style="-sec-extract:summary;margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Item&#160;6. Exhibits</span></div><div style="margin-bottom:6pt;margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.514%"><tr><td style="width:1.0%"></td><td style="width:8.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:89.305%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Exhibit</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Number</span></div></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%;text-decoration:underline">Document</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">31.1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="virc-20230430xex311ng.htm">Certification of Robert A. Virtue, Chief Executive Officer, pursuant to Rules 13a-14 and 15d-14 of the Securities Exchange Act, as adopted pursuant to section 302 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">31.2</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="virc-20230430xex312ng.htm">Certification of Robert E. Dose, Vice President, Finance, pursuant to Rules 13a-14 and 15d-14 of the Securities Exchange Act, as adopted pursuant to section 302 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline">32.1</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline"><a style="-sec-extract:exhibit;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%;text-decoration:underline" href="virc-20230430xex321ng.htm">Certifications of Principal Executive Officer and Principal Financial Officer pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002.</a></span></div></td></tr></table></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit&#160;101.INS &#8212; XBRL Instance Document.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit&#160;101.SCH &#8212; XBRL Taxonomy Extension Schema Document.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit&#160;101.CAL &#8212; XBRL Taxonomy Extension Calculation Linkbase Document.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit&#160;101.LAB &#8212; XBRL Taxonomy Extension Label Linkbase Document.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Exhibit&#160;101.PRE &#8212; XBRL Taxonomy Extension Presentation Linkbase Document.</span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="-sec-extract:summary;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">21</span></div></div></div><div id="i9f22950a62b445c58886781e487ff8d6_139"></div><hr style="page-break-after:always"/><div style="min-height:42.75pt;width:100%"><div><span><br/></span></div></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span><br/></span></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:700;line-height:120%">SIGNATURES </span></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span><br/></span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:120%">Pursuant to the requirements of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned thereunto duly authorized. </span></div><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span><br/></span></div><div style="margin-bottom:1pt;margin-top:6pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:53.219%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:4.170%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:39.311%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="6" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">VIRCO MFG. CORPORATION</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date: June 12, 2023</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">By:</span></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">/s/ Robert E. Dose</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Robert E. Dose</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Vice President &#8212; Finance</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">(Principal Financial Officer)</span></td></tr></table></div><div style="margin-bottom:6pt;margin-top:1pt"><span><br/></span></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">22</span></div></div></div></body></html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>2
<FILENAME>virc-20230430xex311ng.htm
<DESCRIPTION>EX-31.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="iec6f9d988e3c415fa3faa885df7b8164_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.1 </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CERTIFICATIONS </font></div><div style="margin-bottom:5pt;margin-top:5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Robert A. Virtue, certify that&#58; </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1. I have reviewed this Form 10-Q of Virco Mfg. Corporation&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3. Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4. The registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have&#58; </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(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&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(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&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(c) Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(d) Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5. The registrant&#8217;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58; </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(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&#8217;s ability to record, process, summarize and report financial information&#59; and </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting. </font></div><div style="margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:86.988%"><tr><td style="width:1.0%"></td><td style="width:45.118%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:52.682%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Robert A. Virtue</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robert A. Virtue</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;  June 12, 2023<br></font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Chief Executive Officer and Chairman of the Board (Principal Executive Officer)</font></td></tr></table></div><div style="margin-bottom:5pt"><font><br></font></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>3
<FILENAME>virc-20230430xex312ng.htm
<DESCRIPTION>EX-31.2
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="ic1582ab87abd40e1be1f03623697d243_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 31.2 </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CERTIFICATIONS </font></div><div style="margin-bottom:5pt;margin-top:5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">I, Robert E. Dose, certify that&#58; </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">1. I have reviewed this Form 10-Q of Virco Mfg. Corporation&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3. Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">4. The registrant&#8217;s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have&#58; </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(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&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(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&#59; </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(c) Evaluated the effectiveness of the registrant&#8217;s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation&#59; and </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(d) Disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting&#59; and </font></div><div style="margin-bottom:5pt;margin-top:5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">5. The registrant&#8217;s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of the registrant&#8217;s board of directors (or persons performing the equivalent functions)&#58; </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(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&#8217;s ability to record, process, summarize and report financial information&#59; and </font></div><div style="margin-bottom:5pt;margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting. </font></div><div style="margin-top:5pt;padding-left:13.5pt;text-indent:13.5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:86.988%"><tr><td style="width:1.0%"></td><td style="width:45.118%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:52.682%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Robert E. Dose</font></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robert E. Dose</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:top"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Date&#58;  June 12, 2023</font></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Vice President &#8212; Finance, Secretary and Treasurer (Principal Financial Officer)</font></td></tr></table></div><div><font><br></font></div><div style="text-align:center"><font><br></font></div><div style="margin-bottom:5pt;margin-top:5pt"><font><br></font></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>4
<FILENAME>virc-20230430xex321ng.htm
<DESCRIPTION>EX-32.1
<TEXT>
<html><head>
<!-- Document created using Wdesk -->
<!-- Copyright 2023 Workiva -->
<title>Document</title></head><body><div id="i615af5f3f4004fa19973873f3ab7d35d_1"></div><div style="min-height:42.75pt;width:100%"><div><font><br></font></div></div><div style="margin-bottom:5pt;margin-top:5pt;text-align:right"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Exhibit 32.1 </font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">CERTIFICATION PURSUANT TO </font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">18 U.S.C. SECTION 1350, </font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">AS ADOPTED PURSUANT TO </font></div><div style="text-align:center"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002 </font></div><div style="text-align:center"><font><br></font></div><div style="margin-bottom:5pt;margin-top:5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Each of the undersigned hereby certifies, in his capacity as an officer of Virco Mfg. Corporation (the &#8220;Company&#8221;), for purposes of 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that to his own knowledge&#58; </font></div><div style="margin-top:9pt;padding-left:63pt;text-indent:-22.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19pt">The Quarterly Report of the Company on Form 10-Q for the period ended April 30, 2023, fully complies with the requirements of Section 13(a) of the Securities Exchange Act of 1934&#59; and</font></div><div style="margin-top:9pt;padding-left:63pt;text-indent:-22.5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">&#8226;</font><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:19pt">The information contained in such report fairly presents, in all material respects, the financial condition and results of operation of the Company.</font></div><div><font><br></font></div><div><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Date&#58;  June 12, 2023</font></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:54.385%"><tr><td style="width:1.0%"></td><td style="width:98.900%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Robert A. Virtue</font></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robert A. Virtue</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="margin-bottom:5pt;margin-top:5pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Chief Executive Officer and Chairman of the Board</font></div></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Principal Executive Officer)</font></td></tr><tr style="height:9pt"><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#47;s&#47; Robert E. Dose</font></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Robert E. Dose</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vice President &#8212; Finance, Secretary and Treasurer</font></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(Principal Financial Officer)</font></td></tr></table></div><div style="margin-bottom:5pt;margin-top:4pt"><font style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A signed original of this written statement required by Section 906 has been provided to Virco Mfg. Corporation and will be retained by Virco Mfg. Corporation and furnished to the Securities and Exchange Commission or its staff upon request. </font></div><div><font><br></font></div><div style="height:42.75pt;position:relative;width:100%"><div style="bottom:0;position:absolute;width:100%"><div><font><br></font></div></div></div></body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>5
<FILENAME>virc-20230430.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2023 Workiva-->
<!--r:90287618-5607-4752-928b-06db944cd7f3,g:6eff466f-1bee-465d-8a0c-2ce3a06f0245-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:virc="http://www.virco.com/20230430" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://www.virco.com/20230430">
  <xs:import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd"/>
  <xs:import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd"/>
  <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.xbrl.org/2003/xlink-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/2003/linkbase" schemaLocation="http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd"/>
  <xs:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xs:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/country/2022" schemaLocation="https://xbrl.sec.gov/country/2022/country-2022.xsd"/>
  <xs:import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd"/>
  <xs:annotation>
    <xs:appinfo>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="virc-20230430_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="virc-20230430_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="virc-20230430_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xmlns:xlink="http://www.w3.org/1999/xlink" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="virc-20230430_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="CoverPage" roleURI="http://www.virco.com/role/CoverPage">
        <link:definition>0000001 - Document - Cover Page</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="UnauditedCondensedConsolidatedBalanceSheets" roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets">
        <link:definition>0000002 - Statement - Unaudited Condensed Consolidated Balance Sheets</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="UnauditedCondensedConsolidatedBalanceSheetsParenthetical" roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical">
        <link:definition>0000003 - Statement - Unaudited Condensed Consolidated Balance Sheets (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="UnauditedCondensedConsolidatedStatementsofIncome" roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome">
        <link:definition>0000004 - Statement - Unaudited Condensed Consolidated Statements of Income</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss" roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss">
        <link:definition>0000005 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLossParentheticals" roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLossParentheticals">
        <link:definition>0000006 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss) (Parentheticals)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="UnauditedCondensedConsolidatedStatementsofCashFlows" roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows">
        <link:definition>0000007 - Statement - Unaudited Condensed Consolidated Statements of Cash Flows</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="UnauditedConsolidatedStatementsofChangesinStockholdersEquity" roleURI="http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity">
        <link:definition>0000008 - Statement - Unaudited Consolidated Statements of Changes in Stockholders' Equity</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="UnauditedConsolidatedStatementsofChangesinStockholdersEquityParenthetical" roleURI="http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquityParenthetical">
        <link:definition>0000009 - Statement - Unaudited Consolidated Statements of Changes in Stockholders' Equity (Parenthetical)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentation" roleURI="http://www.virco.com/role/BasisofPresentation">
        <link:definition>0000010 - Disclosure - Basis of Presentation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SeasonalityandManagementUseofEstimates" roleURI="http://www.virco.com/role/SeasonalityandManagementUseofEstimates">
        <link:definition>0000011 - Disclosure - Seasonality and Management Use of Estimates</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="NewAccountingPronouncements" roleURI="http://www.virco.com/role/NewAccountingPronouncements">
        <link:definition>0000012 - Disclosure - New Accounting Pronouncements</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RevenueRecognition" roleURI="http://www.virco.com/role/RevenueRecognition">
        <link:definition>0000013 - Disclosure - Revenue Recognition</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Inventories" roleURI="http://www.virco.com/role/Inventories">
        <link:definition>0000014 - Disclosure - Inventories</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Leases" roleURI="http://www.virco.com/role/Leases">
        <link:definition>0000015 - Disclosure - Leases</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Debt" roleURI="http://www.virco.com/role/Debt">
        <link:definition>0000016 - Disclosure - Debt</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxes" roleURI="http://www.virco.com/role/IncomeTaxes">
        <link:definition>0000017 - Disclosure - Income Taxes</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="NetlossperShare" roleURI="http://www.virco.com/role/NetlossperShare">
        <link:definition>0000018 - Disclosure - Net loss per Share</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensation" roleURI="http://www.virco.com/role/StockBasedCompensation">
        <link:definition>0000019 - Disclosure - Stock-Based Compensation</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RetirementPlans" roleURI="http://www.virco.com/role/RetirementPlans">
        <link:definition>0000020 - Disclosure - Retirement Plans</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyAccrual" roleURI="http://www.virco.com/role/WarrantyAccrual">
        <link:definition>0000021 - Disclosure - Warranty Accrual</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="Contingencies" roleURI="http://www.virco.com/role/Contingencies">
        <link:definition>0000022 - Disclosure - Contingencies</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DeliveryCosts" roleURI="http://www.virco.com/role/DeliveryCosts">
        <link:definition>0000023 - Disclosure - Delivery Costs</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SubsequentEvents" roleURI="http://www.virco.com/role/SubsequentEvents">
        <link:definition>0000024 - Disclosure - Subsequent Events</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesTables" roleURI="http://www.virco.com/role/InventoriesTables">
        <link:definition>0000025 - Disclosure - Inventories (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesTables" roleURI="http://www.virco.com/role/LeasesTables">
        <link:definition>0000026 - Disclosure - Leases (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtTables" roleURI="http://www.virco.com/role/DebtTables">
        <link:definition>0000027 - Disclosure - Debt (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="NetincomelossperShareTables" roleURI="http://www.virco.com/role/NetincomelossperShareTables">
        <link:definition>0000028 - Disclosure - Net income (loss) per Share (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationTables" roleURI="http://www.virco.com/role/StockBasedCompensationTables">
        <link:definition>0000029 - Disclosure - Stock-Based Compensation (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RetirementPlansTables" roleURI="http://www.virco.com/role/RetirementPlansTables">
        <link:definition>0000030 - Disclosure - Retirement Plans (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyAccrualTables" roleURI="http://www.virco.com/role/WarrantyAccrualTables">
        <link:definition>0000031 - Disclosure - Warranty Accrual (Tables)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="BasisofPresentationDetails" roleURI="http://www.virco.com/role/BasisofPresentationDetails">
        <link:definition>0000032 - Disclosure - Basis of Presentation (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="SeasonalityDetails" roleURI="http://www.virco.com/role/SeasonalityDetails">
        <link:definition>0000033 - Disclosure - Seasonality (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="InventoriesDetails" roleURI="http://www.virco.com/role/InventoriesDetails">
        <link:definition>0000034 - Disclosure - Inventories (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesASC842QuantitativeInformationDetails" roleURI="http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails">
        <link:definition>0000035 - Disclosure - Leases - ASC 842 Quantitative Information (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesASC842MinimumLeasePaymentsDetails" roleURI="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails">
        <link:definition>0000036 - Disclosure - Leases - ASC 842 Minimum Lease Payments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="LeasesASC842MinimumLeasePaymentsDetails_1" roleURI="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1">
        <link:definition>0000036 - Disclosure - Leases - ASC 842 Minimum Lease Payments (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtLongtermDebtDetails" roleURI="http://www.virco.com/role/DebtLongtermDebtDetails">
        <link:definition>0000037 - Disclosure - Debt (Long-term Debt) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DebtNarrativeDetails" roleURI="http://www.virco.com/role/DebtNarrativeDetails">
        <link:definition>0000038 - Disclosure - Debt (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="IncomeTaxesDetails" roleURI="http://www.virco.com/role/IncomeTaxesDetails">
        <link:definition>0000039 - Disclosure - Income Taxes (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="NetincomelossperShareDetails" roleURI="http://www.virco.com/role/NetincomelossperShareDetails">
        <link:definition>0000040 - Disclosure - Net income (loss) per Share (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="StockBasedCompensationDetails" roleURI="http://www.virco.com/role/StockBasedCompensationDetails">
        <link:definition>0000041 - Disclosure - Stock-Based Compensation (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RetirementPlansPeriodicPensionCostDetails" roleURI="http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails">
        <link:definition>0000042 - Disclosure - Retirement Plans (Periodic Pension Cost) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="RetirementPlansNarrativeDetails" roleURI="http://www.virco.com/role/RetirementPlansNarrativeDetails">
        <link:definition>0000043 - Disclosure - Retirement Plans (Narrative) (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="WarrantyDetails" roleURI="http://www.virco.com/role/WarrantyDetails">
        <link:definition>0000044 - Disclosure - Warranty (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="ContingenciesDetails" roleURI="http://www.virco.com/role/ContingenciesDetails">
        <link:definition>0000045 - Disclosure - Contingencies (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
      <link:roleType id="DeliveryCostsDetails" roleURI="http://www.virco.com/role/DeliveryCostsDetails">
        <link:definition>0000046 - Disclosure - Delivery Costs (Details)</link:definition>
        <link:usedOn>link:presentationLink</link:usedOn>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
      </link:roleType>
    </xs:appinfo>
  </xs:annotation>
  <xs:element id="virc_DebtInstrumentCovenantPeriodAxis" abstract="true" name="DebtInstrumentCovenantPeriodAxis" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:dimensionItem" type="xbrli:stringItemType"/>
  <xs:element id="virc_LineOfCreditFacilityBorrowingCapacityTerm" abstract="false" name="LineOfCreditFacilityBorrowingCapacityTerm" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_GeneralLiabilityLossMember" abstract="true" name="GeneralLiabilityLossMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_AutomobileLiabilityLossMember" abstract="true" name="AutomobileLiabilityLossMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_DeliveryCostsTextBlock" abstract="false" name="DeliveryCostsTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="virc_IncreaseInInventories" abstract="false" name="IncreaseInInventories" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss" abstract="false" name="DefinedBenefitPlanRecognizedNetActuarialGainLoss" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_ShippingAndClassroomDeliveryCosts" abstract="false" name="ShippingAndClassroomDeliveryCosts" nillable="true" xbrli:periodType="duration" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_OtherDebtMember" abstract="true" name="OtherDebtMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" abstract="false" name="DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="virc_ScheduleOfWarrantyTable" abstract="true" name="ScheduleOfWarrantyTable" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrldt:hypercubeItem" type="xbrli:stringItemType"/>
  <xs:element id="virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" abstract="false" name="PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_IncrementalCreditLineIncreaseDecreasePercentage" abstract="false" name="IncrementalCreditLineIncreaseDecreasePercentage" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:pureItemType"/>
  <xs:element id="virc_DefinedContributionPlanNumberOfCommonSharesHeld" abstract="false" name="DefinedContributionPlanNumberOfCommonSharesHeld" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" abstract="false" name="LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="virc_AmendedAndRestatedCreditAgreementMember" abstract="true" name="AmendedAndRestatedCreditAgreementMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_ProductWarranty" abstract="false" name="ProductWarranty" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:durationItemType"/>
  <xs:element id="virc_WarrantyLineItems" abstract="true" name="WarrantyLineItems" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="virc_CreditAgreementAmendmentFee" abstract="false" name="CreditAgreementAmendmentFee" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_IncrementalCreditLineIncreaseDecrease" abstract="false" name="IncrementalCreditLineIncreaseDecrease" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" abstract="false" name="DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:pureItemType"/>
  <xs:element id="virc_LossLiabilityMember" abstract="true" name="LossLiabilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement" abstract="false" name="IncreaseDecreaseInInventorySublimitUnderCreditAgreement" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_IncrementalCommonSharesExcludedToDilutiveEffect" abstract="false" name="IncrementalCommonSharesExcludedToDilutiveEffect" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:sharesItemType"/>
  <xs:element id="virc_NoncashRentExpense" abstract="false" name="NoncashRentExpense" nillable="true" xbrli:periodType="duration" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_InventoryMember" abstract="true" name="InventoryMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" abstract="false" name="LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_EquipmentLoanMember" abstract="true" name="EquipmentLoanMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_DividendPayableMaximumAmountInFiscalYear" abstract="false" name="DividendPayableMaximumAmountInFiscalYear" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_AlternateBaseRateLoansMember" abstract="true" name="AlternateBaseRateLoansMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_SeasonalityAbstract" abstract="true" name="SeasonalityAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" abstract="false" name="IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" nillable="true" xbrli:periodType="instant" xbrli:balance="debit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_ExtremeSeasonalityGoods" abstract="false" name="ExtremeSeasonalityGoods" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="virc_ProductLiabilityMember" abstract="true" name="ProductLiabilityMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_WorkerscompensationLiabilityInsuranceMember" abstract="true" name="WorkerscompensationLiabilityInsuranceMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_PNCMember" abstract="true" name="PNCMember" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_DebtInstrumentCovenantPeriodDomain" abstract="true" name="DebtInstrumentCovenantPeriodDomain" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_CovenantPeriod1Member" abstract="true" name="CovenantPeriod1Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_StockIncentivePlan2019Member" abstract="true" name="StockIncentivePlan2019Member" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:domainItemType"/>
  <xs:element id="virc_SeasonalityTextBlock" abstract="false" name="SeasonalityTextBlock" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType"/>
  <xs:element id="virc_SelfInsuranceRetention" abstract="false" name="SelfInsuranceRetention" nillable="true" xbrli:periodType="instant" xbrli:balance="credit" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType"/>
  <xs:element id="virc_SeasonalityTextualAbstract" abstract="true" name="SeasonalityTextualAbstract" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="xbrli:stringItemType"/>
  <xs:element id="virc_LineOfCreditFacilityBorrowingBaseLimitation" abstract="false" name="LineOfCreditFacilityBorrowingBaseLimitation" nillable="true" xbrli:periodType="duration" substitutionGroup="xbrli:item" type="dtr-types:percentItemType"/>
  <xs:element id="virc_IncreaseDecreaseApplicableMarginBasisPoints" abstract="false" name="IncreaseDecreaseApplicableMarginBasisPoints" nillable="true" xbrli:periodType="instant" substitutionGroup="xbrli:item" type="xbrli:integerItemType"/>
</xs:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>6
<FILENAME>virc-20230430_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2023 Workiva-->
<!--r:90287618-5607-4752-928b-06db944cd7f3,g:6eff466f-1bee-465d-8a0c-2ce3a06f0245-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedBalanceSheets"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_1842bd25-e5f1-4edb-a0b2-8e85ea7b869c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_342239d5-0607-47db-90a7-60bee125fcb3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_1842bd25-e5f1-4edb-a0b2-8e85ea7b869c" xlink:to="loc_us-gaap_PreferredStockValue_342239d5-0607-47db-90a7-60bee125fcb3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_5ae35e84-2eda-4d6d-a4cd-8d36d324249d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_1842bd25-e5f1-4edb-a0b2-8e85ea7b869c" xlink:to="loc_us-gaap_CommonStockValue_5ae35e84-2eda-4d6d-a4cd-8d36d324249d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital_a2a52f8e-e81f-4147-bff2-3b45134960d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_1842bd25-e5f1-4edb-a0b2-8e85ea7b869c" xlink:to="loc_us-gaap_AdditionalPaidInCapital_a2a52f8e-e81f-4147-bff2-3b45134960d4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_fc4b2c79-8377-458f-9f88-b368182e2c6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_1842bd25-e5f1-4edb-a0b2-8e85ea7b869c" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_fc4b2c79-8377-458f-9f88-b368182e2c6f" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_db991eb0-5022-4d96-8af0-5f7e5018df67" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_StockholdersEquity_1842bd25-e5f1-4edb-a0b2-8e85ea7b869c" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_db991eb0-5022-4d96-8af0-5f7e5018df67" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_43eab231-2d8b-4483-9d91-73edfcd686a8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_d9bdd7de-d9af-43ae-b2ba-b37f902def22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_43eab231-2d8b-4483-9d91-73edfcd686a8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_d9bdd7de-d9af-43ae-b2ba-b37f902def22" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_baaa6412-dc28-4b99-800b-8ec059b65d83" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet_43eab231-2d8b-4483-9d91-73edfcd686a8" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_baaa6412-dc28-4b99-800b-8ec059b65d83" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_bc66ce22-cfda-49da-a1ea-ee79b24ced4c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Land_c4671461-899e-4a90-8241-0661bbeb3cec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Land"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_bc66ce22-cfda-49da-a1ea-ee79b24ced4c" xlink:to="loc_us-gaap_Land_c4671461-899e-4a90-8241-0661bbeb3cec" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandImprovements_aa69797e-7b88-4220-9de8-88261edf3ce6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandImprovements"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_bc66ce22-cfda-49da-a1ea-ee79b24ced4c" xlink:to="loc_us-gaap_LandImprovements_aa69797e-7b88-4220-9de8-88261edf3ce6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross_342122ab-3f4a-4a84-bd39-5c2a97737a4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_bc66ce22-cfda-49da-a1ea-ee79b24ced4c" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross_342122ab-3f4a-4a84-bd39-5c2a97737a4d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_1edbc2ad-af73-47b8-9e2a-ca27c2c61e51" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_bc66ce22-cfda-49da-a1ea-ee79b24ced4c" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_1edbc2ad-af73-47b8-9e2a-ca27c2c61e51" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsGross_a070b43d-653e-4855-b85b-2bc87426cc11" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsGross"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross_bc66ce22-cfda-49da-a1ea-ee79b24ced4c" xlink:to="loc_us-gaap_LeaseholdImprovementsGross_a070b43d-653e-4855-b85b-2bc87426cc11" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_c957c168-8270-46ed-9232-b29c0b79dca8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_f0abab28-c99e-4142-9373-b308388aa698" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c957c168-8270-46ed-9232-b29c0b79dca8" xlink:to="loc_us-gaap_AssetsCurrent_f0abab28-c99e-4142-9373-b308388aa698" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_b5c39fc9-6229-46c7-bf96-0615169ed9d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c957c168-8270-46ed-9232-b29c0b79dca8" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_b5c39fc9-6229-46c7-bf96-0615169ed9d4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_c7b9576d-7453-472b-8035-cd8f50e0bd6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c957c168-8270-46ed-9232-b29c0b79dca8" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_c7b9576d-7453-472b-8035-cd8f50e0bd6d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_c1d3986e-3ef5-459c-a24e-5a3c585a1dd5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c957c168-8270-46ed-9232-b29c0b79dca8" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_c1d3986e-3ef5-459c-a24e-5a3c585a1dd5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_d4b46ef2-88dd-42c6-9cf3-04056ea593c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_Assets_c957c168-8270-46ed-9232-b29c0b79dca8" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_d4b46ef2-88dd-42c6-9cf3-04056ea593c3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_25ead18b-f857-4a3d-8275-c881f9660277" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_ec9533ba-b66d-47fa-b552-d858fc0e0ac6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_25ead18b-f857-4a3d-8275-c881f9660277" xlink:to="loc_us-gaap_AccountsPayableCurrent_ec9533ba-b66d-47fa-b552-d858fc0e0ac6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_b0f94405-86cc-4081-9e8f-e51b832a3b2b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_25ead18b-f857-4a3d-8275-c881f9660277" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_b0f94405-86cc-4081-9e8f-e51b832a3b2b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_4fb063ca-abd2-4af9-95f8-57dc42b4f10e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_25ead18b-f857-4a3d-8275-c881f9660277" xlink:to="loc_us-gaap_LongTermDebtCurrent_4fb063ca-abd2-4af9-95f8-57dc42b4f10e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_c083e04d-2426-4500-9710-54fc4c8b9572" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_25ead18b-f857-4a3d-8275-c881f9660277" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_c083e04d-2426-4500-9710-54fc4c8b9572" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_c461b8d9-fa96-4cdc-a3f5-34798c649214" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesCurrent_25ead18b-f857-4a3d-8275-c881f9660277" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_c461b8d9-fa96-4cdc-a3f5-34798c649214" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_3032cd49-1a09-4edb-96a8-47bb6f555bf4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SelfInsuranceReserveNoncurrent_48de36ef-031c-44eb-8655-58007dd1fe93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SelfInsuranceReserveNoncurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_3032cd49-1a09-4edb-96a8-47bb6f555bf4" xlink:to="loc_us-gaap_SelfInsuranceReserveNoncurrent_48de36ef-031c-44eb-8655-58007dd1fe93" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent_539b6022-fd80-4407-803b-a04d2ff1b3c7" xlink:href="virc-20230430.xsd#virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_3032cd49-1a09-4edb-96a8-47bb6f555bf4" xlink:to="loc_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent_539b6022-fd80-4407-803b-a04d2ff1b3c7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesNoncurrent_c578713b-a681-4276-b799-129fbb00c6f9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesNoncurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_3032cd49-1a09-4edb-96a8-47bb6f555bf4" xlink:to="loc_us-gaap_AccruedIncomeTaxesNoncurrent_c578713b-a681-4276-b799-129fbb00c6f9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_d2f9cc47-e6ee-470c-a7a3-722dac6d889d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_3032cd49-1a09-4edb-96a8-47bb6f555bf4" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_d2f9cc47-e6ee-470c-a7a3-722dac6d889d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesNoncurrent_28114342-dbb1-4bec-a6fa-a3e6d2a64860" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesNoncurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_3032cd49-1a09-4edb-96a8-47bb6f555bf4" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesNoncurrent_28114342-dbb1-4bec-a6fa-a3e6d2a64860" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_8e57a940-96e7-4e49-b82c-335561d4d075" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesNoncurrent_3032cd49-1a09-4edb-96a8-47bb6f555bf4" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_8e57a940-96e7-4e49-b82c-335561d4d075" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_bafc3891-834f-4f14-8afa-0e3213793ef5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_9ee6164e-bb0b-494b-9017-a3eaaa90fb90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_bafc3891-834f-4f14-8afa-0e3213793ef5" xlink:to="loc_us-gaap_InventoryNet_9ee6164e-bb0b-494b-9017-a3eaaa90fb90" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_1ee7a817-a8ca-48be-9f71-2d2e1d2937c9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_bafc3891-834f-4f14-8afa-0e3213793ef5" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_1ee7a817-a8ca-48be-9f71-2d2e1d2937c9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Cash_809f637c-a2d6-4326-a3df-cc4bb5716d38" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Cash"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_bafc3891-834f-4f14-8afa-0e3213793ef5" xlink:to="loc_us-gaap_Cash_809f637c-a2d6-4326-a3df-cc4bb5716d38" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_ab957dc2-7ff1-40ca-bd46-64ce4f51afe4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_bafc3891-834f-4f14-8afa-0e3213793ef5" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_ab957dc2-7ff1-40ca-bd46-64ce4f51afe4" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent_b88092e5-98b6-4c09-bead-01db48b9e7cb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_bafc3891-834f-4f14-8afa-0e3213793ef5" xlink:to="loc_us-gaap_OtherReceivablesNetCurrent_b88092e5-98b6-4c09-bead-01db48b9e7cb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesReceivable_ed215de0-46ec-46db-b61c-1f914dfea4c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesReceivable"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_AssetsCurrent_bafc3891-834f-4f14-8afa-0e3213793ef5" xlink:to="loc_us-gaap_IncomeTaxesReceivable_ed215de0-46ec-46db-b61c-1f914dfea4c1" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_65b52f58-bbbc-4003-8e60-a79af357c898" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_0720e56c-c24c-40fc-b2e3-fc65108c77bb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_65b52f58-bbbc-4003-8e60-a79af357c898" xlink:to="loc_us-gaap_StockholdersEquity_0720e56c-c24c-40fc-b2e3-fc65108c77bb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_254655fe-6cb6-498d-a403-1f9f332a1cc6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_65b52f58-bbbc-4003-8e60-a79af357c898" xlink:to="loc_us-gaap_LiabilitiesNoncurrent_254655fe-6cb6-498d-a403-1f9f332a1cc6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_c4b275ae-b78c-4e35-8a87-692f0d5b613e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_65b52f58-bbbc-4003-8e60-a79af357c898" xlink:to="loc_us-gaap_LiabilitiesCurrent_c4b275ae-b78c-4e35-8a87-692f0d5b613e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_fbce3139-acb1-4c54-b3c4-8c6bf32f82ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity_65b52f58-bbbc-4003-8e60-a79af357c898" xlink:to="loc_us-gaap_CommitmentsAndContingencies_fbce3139-acb1-4c54-b3c4-8c6bf32f82ca" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedStatementsofIncome"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_2a8e1935-3b71-4838-b5a1-83eea4b53fe5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_63b608a1-5e40-4dd6-88ec-7186ac5020e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_2a8e1935-3b71-4838-b5a1-83eea4b53fe5" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_63b608a1-5e40-4dd6-88ec-7186ac5020e0" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_36c23f6f-b469-468f-9435-187fc709c4e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetIncomeLoss_2a8e1935-3b71-4838-b5a1-83eea4b53fe5" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_36c23f6f-b469-468f-9435-187fc709c4e3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c8d97cf9-1885-4549-8713-a3e7af233531" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent_185bed18-29ef-4f07-9c60-a68ec5cc56f5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c8d97cf9-1885-4549-8713-a3e7af233531" xlink:to="loc_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent_185bed18-29ef-4f07-9c60-a68ec5cc56f5" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrealizedGainLossOnInvestments_98231f88-8fa1-44d2-a4e4-6cc11ec6901a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrealizedGainLossOnInvestments"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c8d97cf9-1885-4549-8713-a3e7af233531" xlink:to="loc_us-gaap_UnrealizedGainLossOnInvestments_98231f88-8fa1-44d2-a4e4-6cc11ec6901a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_776d0017-71a2-4869-802a-6189e9814f58" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c8d97cf9-1885-4549-8713-a3e7af233531" xlink:to="loc_us-gaap_InterestExpense_776d0017-71a2-4869-802a-6189e9814f58" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_9d9bfd99-f05f-4874-9954-1998b0f1e748" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_c8d97cf9-1885-4549-8713-a3e7af233531" xlink:to="loc_us-gaap_OperatingIncomeLoss_9d9bfd99-f05f-4874-9954-1998b0f1e748" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_96170efc-35b6-4f10-8d0e-66cb330070c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_de028f29-158b-49e6-8d1b-d8fdb3a44873" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_96170efc-35b6-4f10-8d0e-66cb330070c4" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_de028f29-158b-49e6-8d1b-d8fdb3a44873" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_34967182-282d-4e65-a218-eb4f9c8aaf79" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingIncomeLoss_96170efc-35b6-4f10-8d0e-66cb330070c4" xlink:to="loc_us-gaap_GrossProfit_34967182-282d-4e65-a218-eb4f9c8aaf79" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_83c1688c-aae1-427d-928f-95a270199e9d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_b5ac60fc-2ad9-41a9-88d3-7b36cd1b0d85" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_83c1688c-aae1-427d-928f-95a270199e9d" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_b5ac60fc-2ad9-41a9-88d3-7b36cd1b0d85" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_46c707f4-6c8b-49f3-bb5e-c1c54f321cbc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_GrossProfit_83c1688c-aae1-427d-928f-95a270199e9d" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_46c707f4-6c8b-49f3-bb5e-c1c54f321cbc" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_e72b294a-12ca-4d07-9478-cc5292eed494" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_a4800fe6-a9a6-41df-aa92-130d264f0cdd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_e72b294a-12ca-4d07-9478-cc5292eed494" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_a4800fe6-a9a6-41df-aa92-130d264f0cdd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_4aadafa6-aa4d-40a2-a83d-e30c52e703b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax_e72b294a-12ca-4d07-9478-cc5292eed494" xlink:to="loc_us-gaap_NetIncomeLoss_4aadafa6-aa4d-40a2-a83d-e30c52e703b4" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedStatementsofCashFlows"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrealizedGainLossOnInvestments_56a2bddf-a349-4a3f-9a70-748374baae76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrealizedGainLossOnInvestments"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_UnrealizedGainLossOnInvestments_56a2bddf-a349-4a3f-9a70-748374baae76" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_9a3ebd24-c276-464e-bdbf-3a134581e05d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_NetIncomeLoss_9a3ebd24-c276-464e-bdbf-3a134581e05d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_8e75b1dd-e235-4af9-8461-71f81f2179c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_8e75b1dd-e235-4af9-8461-71f81f2179c7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_160dff6c-c7d9-4f43-8d68-40443dca2f5e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_160dff6c-c7d9-4f43-8d68-40443dca2f5e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_0cd906e0-fa44-4821-8354-bc4f17caa25e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:calculationArc order="5" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_0cd906e0-fa44-4821-8354-bc4f17caa25e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax_c70f43ca-1943-4cf7-bf7f-e34b7389f7fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax_c70f43ca-1943-4cf7-bf7f-e34b7389f7fd" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_dc80986f-33fe-40e7-8691-5058bac74303" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_ShareBasedCompensation_dc80986f-33fe-40e7-8691-5058bac74303" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_NoncashRentExpense_f944ab1f-26d5-4888-8980-004d8feafc91" xlink:href="virc-20230430.xsd#virc_NoncashRentExpense"/>
    <link:calculationArc order="8" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_virc_NoncashRentExpense_f944ab1f-26d5-4888-8980-004d8feafc91" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_7ab45e4e-734d-4692-b0bd-428a501a0122" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_7ab45e4e-734d-4692-b0bd-428a501a0122" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_bd5aabde-4ec9-49e6-bba3-e37bd2093a7d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:calculationArc order="10" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_bd5aabde-4ec9-49e6-bba3-e37bd2093a7d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_09a4ff60-9f62-4973-99d8-99aa421d4cba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:calculationArc order="11" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_09a4ff60-9f62-4973-99d8-99aa421d4cba" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxes_267e06d4-4f2e-4661-ad57-e13cabba6de9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxes"/>
    <link:calculationArc order="12" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxes_267e06d4-4f2e-4661-ad57-e13cabba6de9" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherReceivables_92c1fcf1-7e3b-460b-bd64-6a678ad14ce3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherReceivables"/>
    <link:calculationArc order="13" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherReceivables_92c1fcf1-7e3b-460b-bd64-6a678ad14ce3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_b6ecf775-91be-4ea5-a4bb-ee572407d6be" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits"/>
    <link:calculationArc order="14" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_b6ecf775-91be-4ea5-a4bb-ee572407d6be" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_5dfe0704-1fe8-412b-a0b6-cbb4124aa349" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:calculationArc order="15" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_13d8958b-e208-4e31-abf9-706fd09b18f2" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_5dfe0704-1fe8-412b-a0b6-cbb4124aa349" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_13532e9f-594e-4192-878f-eee70811583c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_a1b9cb88-ee7a-4e4f-bf9c-f4f003396ab3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_13532e9f-594e-4192-878f-eee70811583c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_a1b9cb88-ee7a-4e4f-bf9c-f4f003396ab3" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_26b1d4f0-a3cd-404a-a777-d0d3958e2bdb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_13532e9f-594e-4192-878f-eee70811583c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_26b1d4f0-a3cd-404a-a777-d0d3958e2bdb" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_a29caf0a-77ff-4493-bbe1-69aa29047448" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_13532e9f-594e-4192-878f-eee70811583c" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_a29caf0a-77ff-4493-bbe1-69aa29047448" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_090478f4-a35c-4815-afc8-bb523314107a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_a557a99a-7912-4048-bc7b-37f18b39ccd2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_090478f4-a35c-4815-afc8-bb523314107a" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_a557a99a-7912-4048-bc7b-37f18b39ccd2" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt_7a2e8ff0-838a-4dc3-a54d-eee60f4c614b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_090478f4-a35c-4815-afc8-bb523314107a" xlink:to="loc_us-gaap_RepaymentsOfLongTermDebt_7a2e8ff0-838a-4dc3-a54d-eee60f4c614b" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts_a0d29d5e-8391-4f8b-b193-3b40fd82dd75" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_090478f4-a35c-4815-afc8-bb523314107a" xlink:to="loc_us-gaap_PaymentsOfFinancingCosts_a0d29d5e-8391-4f8b-b193-3b40fd82dd75" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_cea9bed0-ed6f-44fa-a793-e8035d828ff2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_f4f05378-d0c8-4c9a-a0f9-f2ea66bc4b3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_cea9bed0-ed6f-44fa-a793-e8035d828ff2" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_f4f05378-d0c8-4c9a-a0f9-f2ea66bc4b3f" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/InventoriesDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#InventoriesDetails"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/InventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_80c85d6c-06e8-49bc-8d9e-37ee30f50c0e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_92f04750-6f5a-40b0-acfe-9080deb8a4ad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_80c85d6c-06e8-49bc-8d9e-37ee30f50c0e" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_92f04750-6f5a-40b0-acfe-9080deb8a4ad" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_e7f36598-ebdb-42d2-81a0-a79c08a62525" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_80c85d6c-06e8-49bc-8d9e-37ee30f50c0e" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_e7f36598-ebdb-42d2-81a0-a79c08a62525" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_27d88156-5ad4-4374-8cda-79c3e038c38c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_InventoryNet_80c85d6c-06e8-49bc-8d9e-37ee30f50c0e" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_27d88156-5ad4-4374-8cda-79c3e038c38c" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#LeasesASC842QuantitativeInformationDetails"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_9f37f66d-3b4c-42af-a3b3-3574f6c71572" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_5aeac5e9-c3e7-4639-a15e-f8c2b7cdae9c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_9f37f66d-3b4c-42af-a3b3-3574f6c71572" xlink:to="loc_us-gaap_OperatingLeaseCost_5aeac5e9-c3e7-4639-a15e-f8c2b7cdae9c" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_3388cb3d-4411-440f-a122-7ef14e44ba7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_9f37f66d-3b4c-42af-a3b3-3574f6c71572" xlink:to="loc_us-gaap_ShortTermLeaseCost_3388cb3d-4411-440f-a122-7ef14e44ba7e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubleaseIncome_34844f08-b089-4ecf-901c-7837b754b508" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubleaseIncome"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_9f37f66d-3b4c-42af-a3b3-3574f6c71572" xlink:to="loc_us-gaap_SubleaseIncome_34844f08-b089-4ecf-901c-7837b754b508" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_6926304b-a4f3-4798-8b9c-c7e52690cf40" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LeaseCost_9f37f66d-3b4c-42af-a3b3-3574f6c71572" xlink:to="loc_us-gaap_VariableLeaseCost_6926304b-a4f3-4798-8b9c-c7e52690cf40" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#LeasesASC842MinimumLeasePaymentsDetails"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_9812ad82-3ee0-4e3d-9260-e457014f8a9f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_b1ee82dc-70bf-49b4-955c-9ab70987ed9a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_9812ad82-3ee0-4e3d-9260-e457014f8a9f" xlink:to="loc_us-gaap_OperatingLeaseLiability_b1ee82dc-70bf-49b4-955c-9ab70987ed9a" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_8a22579e-92d8-4d78-9067-515fdc8571b7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_9812ad82-3ee0-4e3d-9260-e457014f8a9f" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_8a22579e-92d8-4d78-9067-515fdc8571b7" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_f55e4fd7-0798-42a1-9568-8e55f9fae7fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_6cb71e67-a75f-4b70-9594-5b81389a1eff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_f55e4fd7-0798-42a1-9568-8e55f9fae7fc" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_6cb71e67-a75f-4b70-9594-5b81389a1eff" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_ade6ea2e-54c0-4a51-a8f2-9d70cdd00dd9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_OperatingLeaseLiability_f55e4fd7-0798-42a1-9568-8e55f9fae7fc" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_ade6ea2e-54c0-4a51-a8f2-9d70cdd00dd9" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1" xlink:type="simple" xlink:href="virc-20230430.xsd#LeasesASC842MinimumLeasePaymentsDetails_1"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3301bfeb-e13f-4fd5-86c2-036d499ec4f0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_457ca51e-0201-4ebe-a379-0dcfb2330986" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3301bfeb-e13f-4fd5-86c2-036d499ec4f0" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_457ca51e-0201-4ebe-a379-0dcfb2330986" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_0575f317-46f2-4731-9923-c07ccf75271d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3301bfeb-e13f-4fd5-86c2-036d499ec4f0" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_0575f317-46f2-4731-9923-c07ccf75271d" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_27370033-1cdf-40e7-9c0c-1b33e5a11068" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3301bfeb-e13f-4fd5-86c2-036d499ec4f0" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_27370033-1cdf-40e7-9c0c-1b33e5a11068" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_304fae06-139f-48d7-95f7-88cc45af17db" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3301bfeb-e13f-4fd5-86c2-036d499ec4f0" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_304fae06-139f-48d7-95f7-88cc45af17db" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_be519449-e870-4593-bd08-7bf38cbc3aab" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3301bfeb-e13f-4fd5-86c2-036d499ec4f0" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_be519449-e870-4593-bd08-7bf38cbc3aab" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_0436bdd2-eb06-4911-914f-388a69d24961" xlink:href="virc-20230430.xsd#virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_3301bfeb-e13f-4fd5-86c2-036d499ec4f0" xlink:to="loc_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_0436bdd2-eb06-4911-914f-388a69d24961" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/DebtLongtermDebtDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#DebtLongtermDebtDetails"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/DebtLongtermDebtDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_378d83dc-6a30-423b-a9bf-d6d0188d5c23" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_8324b0b7-dbfb-409b-a991-0ab34548bf17" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt_378d83dc-6a30-423b-a9bf-d6d0188d5c23" xlink:to="loc_us-gaap_LongTermDebtCurrent_8324b0b7-dbfb-409b-a991-0ab34548bf17" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_62e4f70e-8d2c-4c37-9405-9a6b8fdad765" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_LongTermDebt_378d83dc-6a30-423b-a9bf-d6d0188d5c23" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_62e4f70e-8d2c-4c37-9405-9a6b8fdad765" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/NetincomelossperShareDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#NetincomelossperShareDetails"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/NetincomelossperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_56b58fa9-9e2e-4b67-a5e0-392c996aa537" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_b55d7616-5737-470a-9a80-e2705627ff4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_56b58fa9-9e2e-4b67-a5e0-392c996aa537" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_b55d7616-5737-470a-9a80-e2705627ff4e" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_258c2741-0234-47bc-9113-af9ab3494601" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_56b58fa9-9e2e-4b67-a5e0-392c996aa537" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_258c2741-0234-47bc-9113-af9ab3494601" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#RetirementPlansPeriodicPensionCostDetails"/>
  <link:calculationLink xlink:role="http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_86d86f00-80f2-4f44-a067-8c8289ad3a1b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_86898e5d-15bf-470e-bb74-baad3fe56173" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_86d86f00-80f2-4f44-a067-8c8289ad3a1b" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_86898e5d-15bf-470e-bb74-baad3fe56173" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_b910edf4-6cd7-470a-a4f1-57804ddd1142" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_86d86f00-80f2-4f44-a067-8c8289ad3a1b" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_b910edf4-6cd7-470a-a4f1-57804ddd1142" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_b8ad5324-74b7-40b0-ba92-4d97b815f619" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_86d86f00-80f2-4f44-a067-8c8289ad3a1b" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_b8ad5324-74b7-40b0-ba92-4d97b815f619" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement_8f5c27ae-0b25-41ea-9980-4fce2cd114b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_86d86f00-80f2-4f44-a067-8c8289ad3a1b" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement_8f5c27ae-0b25-41ea-9980-4fce2cd114b6" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_cbd469de-b081-439a-877c-acab38f68062" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_86d86f00-80f2-4f44-a067-8c8289ad3a1b" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_cbd469de-b081-439a-877c-acab38f68062" xlink:type="arc"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_1c6739e5-7815-4b14-873d-83f5f693ba68" xlink:href="virc-20230430.xsd#virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss"/>
    <link:calculationArc order="6" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_86d86f00-80f2-4f44-a067-8c8289ad3a1b" xlink:to="loc_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_1c6739e5-7815-4b14-873d-83f5f693ba68" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>7
<FILENAME>virc-20230430_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2023 Workiva-->
<!--r:90287618-5607-4752-928b-06db944cd7f3,g:6eff466f-1bee-465d-8a0c-2ce3a06f0245-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
  <link: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"/>
  <link: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"/>
  <link: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"/>
  <link: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"/>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedConsolidatedStatementsofChangesinStockholdersEquity"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity" xlink:type="extended" id="i632b9a24a200445dae958be2cd371219_UnauditedConsolidatedStatementsofChangesinStockholdersEquity">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_5753c889-9258-4b75-a862-aac2d23545ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_5753c889-9258-4b75-a862-aac2d23545ec" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_97714537-8228-4137-83f0-d0a6e51c5d28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_97714537-8228-4137-83f0-d0a6e51c5d28" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_445f48b5-26bc-4f37-9c9e-8078897cfab3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_StockholdersEquity_445f48b5-26bc-4f37-9c9e-8078897cfab3" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_f2a48345-11ee-490a-a53c-ee522dccf0ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_NetIncomeLoss_f2a48345-11ee-490a-a53c-ee522dccf0ed" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_d9f017be-3b12-4593-9fab-006d3ead5e93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_d9f017be-3b12-4593-9fab-006d3ead5e93" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_2f0cef8a-613a-434d-8f78-9e0396dfff6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_2f0cef8a-613a-434d-8f78-9e0396dfff6e" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_a2b172e2-9653-4597-a865-9f44cafce935" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_f4941fbd-b8a0-41d3-89ae-e36cf78142c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_cea3cf88-cfef-4826-9414-9f00849daeb0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_5753c889-9258-4b75-a862-aac2d23545ec" xlink:to="loc_us-gaap_StatementTable_cea3cf88-cfef-4826-9414-9f00849daeb0" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_0c76194f-e901-457f-a6b3-b21bd3f44bb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_cea3cf88-cfef-4826-9414-9f00849daeb0" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_0c76194f-e901-457f-a6b3-b21bd3f44bb1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_0c76194f-e901-457f-a6b3-b21bd3f44bb1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_0c76194f-e901-457f-a6b3-b21bd3f44bb1" xlink:to="loc_us-gaap_EquityComponentDomain_0c76194f-e901-457f-a6b3-b21bd3f44bb1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_0c76194f-e901-457f-a6b3-b21bd3f44bb1" xlink:to="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_edc57fab-5cfb-4e17-9d1f-e529557fe461" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:to="loc_us-gaap_CommonStockMember_edc57fab-5cfb-4e17-9d1f-e529557fe461" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_c9eec18b-b096-4f21-b776-b5a3de067c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_c9eec18b-b096-4f21-b776-b5a3de067c3e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_1d78fb71-09db-466e-8a95-f44ebdf07911" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:to="loc_us-gaap_RetainedEarningsMember_1d78fb71-09db-466e-8a95-f44ebdf07911" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_eb6c277c-061c-4279-b2ce-812a70e97000" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_eb6c277c-061c-4279-b2ce-812a70e97000" xlink:type="arc" order="3"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/BasisofPresentationDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#BasisofPresentationDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/BasisofPresentationDetails" xlink:type="extended" id="i90e22ff44e29455497cde4cda251d5e2_BasisofPresentationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_e490bc9c-3b60-4151-a9f4-2cad6840c7c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_f0194b25-f0a2-4149-bf3d-4598ea015b12" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_StatementLineItems_e490bc9c-3b60-4151-a9f4-2cad6840c7c7" xlink:to="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_f0194b25-f0a2-4149-bf3d-4598ea015b12" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_041c6351-8ce6-4b10-96ec-83fd8c16edc2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_StatementLineItems_e490bc9c-3b60-4151-a9f4-2cad6840c7c7" xlink:to="loc_us-gaap_StatementTable_041c6351-8ce6-4b10-96ec-83fd8c16edc2" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_c270ffc3-1862-4c75-865a-7a025ca527a9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_StatementTable_041c6351-8ce6-4b10-96ec-83fd8c16edc2" xlink:to="loc_srt_RangeAxis_c270ffc3-1862-4c75-865a-7a025ca527a9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_c270ffc3-1862-4c75-865a-7a025ca527a9_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_c270ffc3-1862-4c75-865a-7a025ca527a9" xlink:to="loc_srt_RangeMember_c270ffc3-1862-4c75-865a-7a025ca527a9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_e9ca698d-7ebc-4f35-977f-96822fdc9064" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_c270ffc3-1862-4c75-865a-7a025ca527a9" xlink:to="loc_srt_RangeMember_e9ca698d-7ebc-4f35-977f-96822fdc9064" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6391fc86-b3e5-48ab-8765-c1843f225b68" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_e9ca698d-7ebc-4f35-977f-96822fdc9064" xlink:to="loc_srt_MaximumMember_6391fc86-b3e5-48ab-8765-c1843f225b68" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/SeasonalityDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#SeasonalityDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/SeasonalityDetails" xlink:type="extended" id="i3589ce668b6e4e74a37a7c49b6d09634_SeasonalityDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_67027bd1-9745-4ae2-b2e8-f8439fa64ff3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SeasonalityTextualAbstract_4d915bd1-5eb0-46fe-bd11-1ef6bc4cc708" xlink:href="virc-20230430.xsd#virc_SeasonalityTextualAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_67027bd1-9745-4ae2-b2e8-f8439fa64ff3" xlink:to="loc_virc_SeasonalityTextualAbstract_4d915bd1-5eb0-46fe-bd11-1ef6bc4cc708" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ExtremeSeasonalityGoods_70763f57-35cb-44e4-a0f9-64192645d580" xlink:href="virc-20230430.xsd#virc_ExtremeSeasonalityGoods"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_virc_SeasonalityTextualAbstract_4d915bd1-5eb0-46fe-bd11-1ef6bc4cc708" xlink:to="loc_virc_ExtremeSeasonalityGoods_70763f57-35cb-44e4-a0f9-64192645d580" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_7fb31d9c-0131-4fd3-b007-3e94f07285a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_67027bd1-9745-4ae2-b2e8-f8439fa64ff3" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_7fb31d9c-0131-4fd3-b007-3e94f07285a2" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_7fb31d9c-0131-4fd3-b007-3e94f07285a2" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_16d98e6f-366d-4a15-bda9-5e5b3a596230" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_16d98e6f-366d-4a15-bda9-5e5b3a596230" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesMember_d01c7be8-c989-46e6-b927-a4ec6a3b70d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_16d98e6f-366d-4a15-bda9-5e5b3a596230" xlink:to="loc_us-gaap_SalesMember_d01c7be8-c989-46e6-b927-a4ec6a3b70d8" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/DebtLongtermDebtDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#DebtLongtermDebtDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/DebtLongtermDebtDetails" xlink:type="extended" id="idf504e8b65f74bd4a3adf4dba70e659f_DebtLongtermDebtDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_738d4b81-2c32-48ee-b3e7-5428a0b0aa22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:to="loc_us-gaap_LongTermDebt_738d4b81-2c32-48ee-b3e7-5428a0b0aa22" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_92cbab40-06ef-4ae6-a213-0a83cfc58e2d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:to="loc_us-gaap_LongTermDebtCurrent_92cbab40-06ef-4ae6-a213-0a83cfc58e2d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_0ad2947d-d923-4426-93e8-2849964f8b96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_0ad2947d-d923-4426-93e8-2849964f8b96" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_a37b4f50-b728-49b7-b97e-dd9e3ec38d6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:to="loc_us-gaap_DebtInstrumentTable_a37b4f50-b728-49b7-b97e-dd9e3ec38d6d" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_11f7631c-fd7a-47f9-9a64-7c7626ba74f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DebtInstrumentTable_a37b4f50-b728-49b7-b97e-dd9e3ec38d6d" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_11f7631c-fd7a-47f9-9a64-7c7626ba74f4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_11f7631c-fd7a-47f9-9a64-7c7626ba74f4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_11f7631c-fd7a-47f9-9a64-7c7626ba74f4" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_11f7631c-fd7a-47f9-9a64-7c7626ba74f4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_ff7926e6-7f6e-4094-b87c-142b4e9f3579" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_11f7631c-fd7a-47f9-9a64-7c7626ba74f4" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_ff7926e6-7f6e-4094-b87c-142b4e9f3579" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_5f206907-6232-4b00-88c8-2f20ab7e70ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_ff7926e6-7f6e-4094-b87c-142b4e9f3579" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_5f206907-6232-4b00-88c8-2f20ab7e70ef" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_OtherDebtMember_9f54c335-0bbd-4cc1-bd14-2962aacd532c" xlink:href="virc-20230430.xsd#virc_OtherDebtMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_ff7926e6-7f6e-4094-b87c-142b4e9f3579" xlink:to="loc_virc_OtherDebtMember_9f54c335-0bbd-4cc1-bd14-2962aacd532c" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/DebtNarrativeDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#DebtNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/DebtNarrativeDetails" xlink:type="extended" id="ibb00d956f5bf4dd8836762749970a5f5_DebtNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DividendPayableMaximumAmountInFiscalYear_9cc1d058-5d83-4dcb-8fc7-823619f6ca76" xlink:href="virc-20230430.xsd#virc_DividendPayableMaximumAmountInFiscalYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_DividendPayableMaximumAmountInFiscalYear_9cc1d058-5d83-4dcb-8fc7-823619f6ca76" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_8d9bc7dc-0d12-47de-90f6-34769fb88dd5" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_8d9bc7dc-0d12-47de-90f6-34769fb88dd5" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_6c96bdd6-4cf6-45c7-9e4d-f093c6cb1c7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_6c96bdd6-4cf6-45c7-9e4d-f093c6cb1c7b" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineOfCreditFacilityBorrowingBaseLimitation_376fc68e-f01f-4e6b-9c01-39e9c3ff8d7d" xlink:href="virc-20230430.xsd#virc_LineOfCreditFacilityBorrowingBaseLimitation"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_LineOfCreditFacilityBorrowingBaseLimitation_376fc68e-f01f-4e6b-9c01-39e9c3ff8d7d" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineOfCreditFacilityBorrowingCapacityTerm_39e1497d-0ee5-4e47-bd60-3af6409781d5" xlink:href="virc-20230430.xsd#virc_LineOfCreditFacilityBorrowingCapacityTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_LineOfCreditFacilityBorrowingCapacityTerm_39e1497d-0ee5-4e47-bd60-3af6409781d5" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear_ec2dccec-083f-4898-9668-880850964aa3" xlink:href="virc-20230430.xsd#virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear_ec2dccec-083f-4898-9668-880850964aa3" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_CreditAgreementAmendmentFee_62f91de9-f530-4ff7-8784-212c82f34a21" xlink:href="virc-20230430.xsd#virc_CreditAgreementAmendmentFee"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_CreditAgreementAmendmentFee_62f91de9-f530-4ff7-8784-212c82f34a21" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_b51f2473-7889-469c-bf2f-3482551b1cea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_b51f2473-7889-469c-bf2f-3482551b1cea" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_a07da1ff-c6a5-448b-b428-584098e86142" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_a07da1ff-c6a5-448b-b428-584098e86142" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_caa4e67e-9aff-4b5b-b8fa-184556a7a69d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_caa4e67e-9aff-4b5b-b8fa-184556a7a69d" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_0c05604f-ee74-432d-9a2d-f76bd48f5e70" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LongTermDebt_0c05604f-ee74-432d-9a2d-f76bd48f5e70" xlink:type="arc" order="10"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_17f2a9cb-7946-4fc0-bf5e-a5f9bd221f45" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_17f2a9cb-7946-4fc0-bf5e-a5f9bd221f45" xlink:type="arc" order="11"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm_0970d38f-9635-4015-9ecf-529d14aa2b50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_DebtInstrumentTerm_0970d38f-9635-4015-9ecf-529d14aa2b50" xlink:type="arc" order="12"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet_7568591d-ddf0-4ee4-99a3-0bc043abf6d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet_7568591d-ddf0-4ee4-99a3-0bc043abf6d0" xlink:type="arc" order="13"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement_f71306b8-c653-4f8d-9359-fbd6b7ce8b5a" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement_f71306b8-c653-4f8d-9359-fbd6b7ce8b5a" xlink:type="arc" order="14"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement_f6a8737b-ae81-4d73-b3cb-fbecb6869b60" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement_f6a8737b-ae81-4d73-b3cb-fbecb6869b60" xlink:type="arc" order="15"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncrementalCreditLineIncreaseDecreasePercentage_4039d94f-b33e-4352-bf25-7eac3c2c3c6c" xlink:href="virc-20230430.xsd#virc_IncrementalCreditLineIncreaseDecreasePercentage"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncrementalCreditLineIncreaseDecreasePercentage_4039d94f-b33e-4352-bf25-7eac3c2c3c6c" xlink:type="arc" order="16"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseApplicableMarginBasisPoints_a33edf3f-9e9e-4ef9-a2be-1eaaecd84f99" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseApplicableMarginBasisPoints"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncreaseDecreaseApplicableMarginBasisPoints_a33edf3f-9e9e-4ef9-a2be-1eaaecd84f99" xlink:type="arc" order="17"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncrementalCreditLineIncreaseDecrease_6755e1d6-828b-449a-bbdd-160474090240" xlink:href="virc-20230430.xsd#virc_IncrementalCreditLineIncreaseDecrease"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncrementalCreditLineIncreaseDecrease_6755e1d6-828b-449a-bbdd-160474090240" xlink:type="arc" order="18"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFeeAmount_0414362d-3957-47ac-a0d5-8da719ac08ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFeeAmount"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_DebtInstrumentFeeAmount_0414362d-3957-47ac-a0d5-8da719ac08ed" xlink:type="arc" order="19"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases_0bc1b149-2782-4ccc-9c07-8480c22f895a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases_0bc1b149-2782-4ccc-9c07-8480c22f895a" xlink:type="arc" order="20"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradingActivityByTypeAxis_6de78551-aa44-4265-82b3-16f964b76f3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_TradingActivityByTypeAxis_6de78551-aa44-4265-82b3-16f964b76f3f" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradingActivityByTypeDomain_6de78551-aa44-4265-82b3-16f964b76f3f_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_TradingActivityByTypeAxis_6de78551-aa44-4265-82b3-16f964b76f3f" xlink:to="loc_us-gaap_TradingActivityByTypeDomain_6de78551-aa44-4265-82b3-16f964b76f3f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradingActivityByTypeDomain_30a9e575-48bc-4b45-a2a1-9129c0190d1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_TradingActivityByTypeAxis_6de78551-aa44-4265-82b3-16f964b76f3f" xlink:to="loc_us-gaap_TradingActivityByTypeDomain_30a9e575-48bc-4b45-a2a1-9129c0190d1d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AlternateBaseRateLoansMember_4ba85748-7b03-42b8-822c-2c1941e7a6b3" xlink:href="virc-20230430.xsd#virc_AlternateBaseRateLoansMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_TradingActivityByTypeDomain_30a9e575-48bc-4b45-a2a1-9129c0190d1d" xlink:to="loc_virc_AlternateBaseRateLoansMember_4ba85748-7b03-42b8-822c-2c1941e7a6b3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis_ed901901-719f-4ad5-9dd1-3e8e430ccacc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_LineOfCreditFacilityAxis_ed901901-719f-4ad5-9dd1-3e8e430ccacc" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_ed901901-719f-4ad5-9dd1-3e8e430ccacc_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_ed901901-719f-4ad5-9dd1-3e8e430ccacc" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_ed901901-719f-4ad5-9dd1-3e8e430ccacc_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_24ff7f9d-ddce-4800-980b-fbb8302fd029" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_ed901901-719f-4ad5-9dd1-3e8e430ccacc" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_24ff7f9d-ddce-4800-980b-fbb8302fd029" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_PNCMember_498b651d-78e4-4759-a2d5-998f58d395be" xlink:href="virc-20230430.xsd#virc_PNCMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain_24ff7f9d-ddce-4800-980b-fbb8302fd029" xlink:to="loc_virc_PNCMember_498b651d-78e4-4759-a2d5-998f58d395be" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_5496ce16-1f13-43d7-9fcb-23245ae73813" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_CreditFacilityAxis_5496ce16-1f13-43d7-9fcb-23245ae73813" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_5496ce16-1f13-43d7-9fcb-23245ae73813_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_CreditFacilityAxis_5496ce16-1f13-43d7-9fcb-23245ae73813" xlink:to="loc_us-gaap_CreditFacilityDomain_5496ce16-1f13-43d7-9fcb-23245ae73813_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_b6273b99-5465-4573-87bc-eaaef91a0fbb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_CreditFacilityAxis_5496ce16-1f13-43d7-9fcb-23245ae73813" xlink:to="loc_us-gaap_CreditFacilityDomain_b6273b99-5465-4573-87bc-eaaef91a0fbb" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_8214b6ca-b1e9-4cdf-84de-d1c5c38211b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_b6273b99-5465-4573-87bc-eaaef91a0fbb" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_8214b6ca-b1e9-4cdf-84de-d1c5c38211b3" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_EquipmentLoanMember_b41a92fb-04f7-4871-951d-03a79ed65f21" xlink:href="virc-20230430.xsd#virc_EquipmentLoanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_CreditFacilityDomain_b6273b99-5465-4573-87bc-eaaef91a0fbb" xlink:to="loc_virc_EquipmentLoanMember_b41a92fb-04f7-4871-951d-03a79ed65f21" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_bd424aa5-f55a-47f2-9c27-8e41523c73b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_DebtInstrumentAxis_bd424aa5-f55a-47f2-9c27-8e41523c73b4" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_bd424aa5-f55a-47f2-9c27-8e41523c73b4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_DebtInstrumentAxis_bd424aa5-f55a-47f2-9c27-8e41523c73b4" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_bd424aa5-f55a-47f2-9c27-8e41523c73b4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b7d95f35-54e8-4d48-856f-54c77139f96d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_DebtInstrumentAxis_bd424aa5-f55a-47f2-9c27-8e41523c73b4" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b7d95f35-54e8-4d48-856f-54c77139f96d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AmendedAndRestatedCreditAgreementMember_447f61c0-5e4b-4927-bbf0-dac17a6bda65" xlink:href="virc-20230430.xsd#virc_AmendedAndRestatedCreditAgreementMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b7d95f35-54e8-4d48-856f-54c77139f96d" xlink:to="loc_virc_AmendedAndRestatedCreditAgreementMember_447f61c0-5e4b-4927-bbf0-dac17a6bda65" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_5c838cf1-0921-412d-bbda-f710f9883d38" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_srt_RangeAxis_5c838cf1-0921-412d-bbda-f710f9883d38" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_5c838cf1-0921-412d-bbda-f710f9883d38_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_5c838cf1-0921-412d-bbda-f710f9883d38" xlink:to="loc_srt_RangeMember_5c838cf1-0921-412d-bbda-f710f9883d38_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_650704f6-c4bf-4189-993a-52e24d670a58" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_5c838cf1-0921-412d-bbda-f710f9883d38" xlink:to="loc_srt_RangeMember_650704f6-c4bf-4189-993a-52e24d670a58" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6cedc622-06c7-492b-8594-932cdb6cf4a5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_650704f6-c4bf-4189-993a-52e24d670a58" xlink:to="loc_srt_MaximumMember_6cedc622-06c7-492b-8594-932cdb6cf4a5" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_cd36f31c-0ea4-4441-a36c-270d05b3f851" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_650704f6-c4bf-4189-993a-52e24d670a58" xlink:to="loc_srt_MinimumMember_cd36f31c-0ea4-4441-a36c-270d05b3f851" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_d32e4b27-425c-4f37-af8d-89008ce32bc8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:to="loc_us-gaap_AccountsReceivableMember_d32e4b27-425c-4f37-af8d-89008ce32bc8" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_InventoryMember_5d7f735b-af4f-4a51-8488-9999fa0267d7" xlink:href="virc-20230430.xsd#virc_InventoryMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:to="loc_virc_InventoryMember_5d7f735b-af4f-4a51-8488-9999fa0267d7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoriesMember_6af7f6cd-615e-4c6e-991b-3ac7035c45b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoriesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:to="loc_us-gaap_InventoriesMember_6af7f6cd-615e-4c6e-991b-3ac7035c45b5" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantPeriodAxis_44429b32-e9d4-4b40-b3c7-970759ae329f" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantPeriodAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_virc_DebtInstrumentCovenantPeriodAxis_44429b32-e9d4-4b40-b3c7-970759ae329f" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantPeriodDomain_44429b32-e9d4-4b40-b3c7-970759ae329f_default" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantPeriodDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_virc_DebtInstrumentCovenantPeriodAxis_44429b32-e9d4-4b40-b3c7-970759ae329f" xlink:to="loc_virc_DebtInstrumentCovenantPeriodDomain_44429b32-e9d4-4b40-b3c7-970759ae329f_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantPeriodDomain_14ded696-b5c4-4eee-9953-76c11c411b9a" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantPeriodDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_virc_DebtInstrumentCovenantPeriodAxis_44429b32-e9d4-4b40-b3c7-970759ae329f" xlink:to="loc_virc_DebtInstrumentCovenantPeriodDomain_14ded696-b5c4-4eee-9953-76c11c411b9a" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_CovenantPeriod1Member_ad051843-6743-443d-8d10-cdb388ccce7f" xlink:href="virc-20230430.xsd#virc_CovenantPeriod1Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_virc_DebtInstrumentCovenantPeriodDomain_14ded696-b5c4-4eee-9953-76c11c411b9a" xlink:to="loc_virc_CovenantPeriod1Member_ad051843-6743-443d-8d10-cdb388ccce7f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62" xlink:type="arc" order="8"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_1f1a1627-ced6-41f1-897d-db86d0e93a16" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_1f1a1627-ced6-41f1-897d-db86d0e93a16" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_5c633e07-ed2d-4cb3-bae7-0e6882641369" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_1f1a1627-ced6-41f1-897d-db86d0e93a16" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_5c633e07-ed2d-4cb3-bae7-0e6882641369" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MortgagesMember_49dbcb81-0ee0-46ab-a071-82b781989376" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MortgagesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_1f1a1627-ced6-41f1-897d-db86d0e93a16" xlink:to="loc_us-gaap_MortgagesMember_49dbcb81-0ee0-46ab-a071-82b781989376" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_0c130af8-f0ac-45cf-ab0a-4a45220fc519" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_0c130af8-f0ac-45cf-ab0a-4a45220fc519" xlink:type="arc" order="9"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_0c130af8-f0ac-45cf-ab0a-4a45220fc519_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_0c130af8-f0ac-45cf-ab0a-4a45220fc519" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_0c130af8-f0ac-45cf-ab0a-4a45220fc519_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_8580b620-53d1-4f7c-82b0-68182b9764d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_0c130af8-f0ac-45cf-ab0a-4a45220fc519" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_8580b620-53d1-4f7c-82b0-68182b9764d2" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_e12e5095-c714-4fb7-8343-2238d1a2007d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_8580b620-53d1-4f7c-82b0-68182b9764d2" xlink:to="loc_us-gaap_SubsequentEventMember_e12e5095-c714-4fb7-8343-2238d1a2007d" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/StockBasedCompensationDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#StockBasedCompensationDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/StockBasedCompensationDetails" xlink:type="extended" id="ia467eb45a5af44369845d1f24f10da1e_StockBasedCompensationDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_ac62063e-19a9-4f86-98d9-fa3804373827" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_ac62063e-19a9-4f86-98d9-fa3804373827" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_ad45ca9e-fa0c-4c7a-b4bb-663b5171fc72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_ad45ca9e-fa0c-4c7a-b4bb-663b5171fc72" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8a7e1172-3f1f-410f-871f-488f7cc97bfb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8a7e1172-3f1f-410f-871f-488f7cc97bfb" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_51590c42-bff1-4a26-8e79-d5bf78388d1e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_51590c42-bff1-4a26-8e79-d5bf78388d1e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_47821b72-856d-426d-942e-34586a7d6a86" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_47821b72-856d-426d-942e-34586a7d6a86" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_54518063-8d2a-47e7-b7c8-ffe2b283deb6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_54518063-8d2a-47e7-b7c8-ffe2b283deb6" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_48280157-fb28-4a22-9088-7cb453497b7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_48280157-fb28-4a22-9088-7cb453497b7e" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_7663add9-424d-49f4-b5fc-90db29ad7e80" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_7663add9-424d-49f4-b5fc-90db29ad7e80" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_1c8bb424-2236-4d22-b3db-53ad2d7fafc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:to="loc_us-gaap_AwardTypeAxis_1c8bb424-2236-4d22-b3db-53ad2d7fafc1" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1c8bb424-2236-4d22-b3db-53ad2d7fafc1_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_AwardTypeAxis_1c8bb424-2236-4d22-b3db-53ad2d7fafc1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_1c8bb424-2236-4d22-b3db-53ad2d7fafc1_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2b960f79-d058-4ead-b68a-2b36e031728b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_AwardTypeAxis_1c8bb424-2236-4d22-b3db-53ad2d7fafc1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2b960f79-d058-4ead-b68a-2b36e031728b" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_5a17e907-5397-4c24-b86d-cd70936f36d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2b960f79-d058-4ead-b68a-2b36e031728b" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_5a17e907-5397-4c24-b86d-cd70936f36d2" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:to="loc_us-gaap_PlanNameAxis_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_PlanNameAxis_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a" xlink:to="loc_us-gaap_PlanNameDomain_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_1e52db64-3955-4e53-9a4d-657f7063f9de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_PlanNameAxis_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a" xlink:to="loc_us-gaap_PlanNameDomain_1e52db64-3955-4e53-9a4d-657f7063f9de" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_StockIncentivePlan2019Member_9c775617-9c41-4bbd-8dbd-d62419a69ab1" xlink:href="virc-20230430.xsd#virc_StockIncentivePlan2019Member"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_PlanNameDomain_1e52db64-3955-4e53-9a4d-657f7063f9de" xlink:to="loc_virc_StockIncentivePlan2019Member_9c775617-9c41-4bbd-8dbd-d62419a69ab1" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_29e2426f-bb56-4131-a65f-dd493be1175e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_29e2426f-bb56-4131-a65f-dd493be1175e" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_29e2426f-bb56-4131-a65f-dd493be1175e_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_29e2426f-bb56-4131-a65f-dd493be1175e" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_29e2426f-bb56-4131-a65f-dd493be1175e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_7afe1f02-38ae-40bb-9cb1-22f7ba1a8c57" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_29e2426f-bb56-4131-a65f-dd493be1175e" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_7afe1f02-38ae-40bb-9cb1-22f7ba1a8c57" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_ddd8c1cb-3345-451e-b61f-ffe25a169f5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_7afe1f02-38ae-40bb-9cb1-22f7ba1a8c57" xlink:to="loc_us-gaap_CostOfSalesMember_ddd8c1cb-3345-451e-b61f-ffe25a169f5d" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_d3352922-e54e-45b4-bd08-9db832b9bde2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_7afe1f02-38ae-40bb-9cb1-22f7ba1a8c57" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_d3352922-e54e-45b4-bd08-9db832b9bde2" xlink:type="arc" order="1"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#RetirementPlansPeriodicPensionCostDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails" xlink:type="extended" id="i74e4093e9960460f869ccb3a51e2e815_RetirementPlansPeriodicPensionCostDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_54fbe118-893a-40c1-b5a7-f5ac3bb09892" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_54fbe118-893a-40c1-b5a7-f5ac3bb09892" xlink:to="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_8e62656d-1999-4fb5-a2c0-1c7e1ce6b7d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_8e62656d-1999-4fb5-a2c0-1c7e1ce6b7d6" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_edfb3236-0f0d-4241-88c0-dc1722af8271" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_edfb3236-0f0d-4241-88c0-dc1722af8271" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_ece3013f-816f-4aca-8f47-5f927e07cd56" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_ece3013f-816f-4aca-8f47-5f927e07cd56" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement_81027ac7-3888-4618-add7-fa69c5a161bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement_81027ac7-3888-4618-add7-fa69c5a161bc" xlink:type="arc" order="4"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_41974837-9f2d-41a4-8bf7-35fd52a80ea2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_41974837-9f2d-41a4-8bf7-35fd52a80ea2" xlink:type="arc" order="5"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_5f414818-bd90-47b3-a31e-0d356ccc212f" xlink:href="virc-20230430.xsd#virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_5f414818-bd90-47b3-a31e-0d356ccc212f" xlink:type="arc" order="6"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_4b4b940a-30db-40ba-8cf1-4d0ac73e9c1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_4b4b940a-30db-40ba-8cf1-4d0ac73e9c1c" xlink:type="arc" order="7"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_451c3dc5-27c8-4531-8090-d82dfd244ddf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_54fbe118-893a-40c1-b5a7-f5ac3bb09892" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_451c3dc5-27c8-4531-8090-d82dfd244ddf" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_a3c116dd-a64d-460e-9a8e-6f75184049ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_451c3dc5-27c8-4531-8090-d82dfd244ddf" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_a3c116dd-a64d-460e-9a8e-6f75184049ed" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_a3c116dd-a64d-460e-9a8e-6f75184049ed_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_a3c116dd-a64d-460e-9a8e-6f75184049ed" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_a3c116dd-a64d-460e-9a8e-6f75184049ed_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_dc3547c7-ef1c-4438-b6f1-f1c2c0ee73b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_a3c116dd-a64d-460e-9a8e-6f75184049ed" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_dc3547c7-ef1c-4438-b6f1-f1c2c0ee73b0" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_948f4292-101a-412a-a719-dbc90a9d1ace" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_dc3547c7-ef1c-4438-b6f1-f1c2c0ee73b0" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_948f4292-101a-412a-a719-dbc90a9d1ace" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/RetirementPlansNarrativeDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#RetirementPlansNarrativeDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/RetirementPlansNarrativeDetails" xlink:type="extended" id="i2db6a8f64c2245e4b130db1f1f88e28f_RetirementPlansNarrativeDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent_07651879-b6da-4c8e-bf12-ef793bd304be" xlink:href="virc-20230430.xsd#virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent_07651879-b6da-4c8e-bf12-ef793bd304be" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_9a0d241a-ea1a-4c0d-9c6b-0efecfe71a09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_9a0d241a-ea1a-4c0d-9c6b-0efecfe71a09" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedContributionPlanNumberOfCommonSharesHeld_6467b326-354c-46e6-a6a2-c031b01ad0d4" xlink:href="virc-20230430.xsd#virc_DefinedContributionPlanNumberOfCommonSharesHeld"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_virc_DefinedContributionPlanNumberOfCommonSharesHeld_6467b326-354c-46e6-a6a2-c031b01ad0d4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer_2a3ad5d4-d34e-4484-adf7-864a1006c4fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer_2a3ad5d4-d34e-4484-adf7-864a1006c4fd" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationAxis_846bcdbb-dcc5-422a-94dc-a0309c017fc9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationAxis_846bcdbb-dcc5-422a-94dc-a0309c017fc9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationDomain_846bcdbb-dcc5-422a-94dc-a0309c017fc9_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationAxis_846bcdbb-dcc5-422a-94dc-a0309c017fc9" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationDomain_846bcdbb-dcc5-422a-94dc-a0309c017fc9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationDomain_241e2f99-0b6b-455d-94a4-1f9c45664c28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationAxis_846bcdbb-dcc5-422a-94dc-a0309c017fc9" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationDomain_241e2f99-0b6b-455d-94a4-1f9c45664c28" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticPlanMember_fbb76546-164a-4b09-b4fa-30a374ba513b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticPlanMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationDomain_241e2f99-0b6b-455d-94a4-1f9c45664c28" xlink:to="loc_us-gaap_DomesticPlanMember_fbb76546-164a-4b09-b4fa-30a374ba513b" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_ba88e235-86e7-44a0-bb33-e3273ee9be4e" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_DomesticPlanMember_fbb76546-164a-4b09-b4fa-30a374ba513b" xlink:to="loc_country_US_ba88e235-86e7-44a0-bb33-e3273ee9be4e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_e87cf081-19b6-4964-951c-a1742cd803d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_e87cf081-19b6-4964-951c-a1742cd803d4" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_e87cf081-19b6-4964-951c-a1742cd803d4_default" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_e87cf081-19b6-4964-951c-a1742cd803d4" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_e87cf081-19b6-4964-951c-a1742cd803d4_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_35f4fccf-da0b-421d-bd56-3e2cc19cb486" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_e87cf081-19b6-4964-951c-a1742cd803d4" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_35f4fccf-da0b-421d-bd56-3e2cc19cb486" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_1f6442d2-fec4-4429-9a6a-1702d38cb86d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_35f4fccf-da0b-421d-bd56-3e2cc19cb486" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_1f6442d2-fec4-4429-9a6a-1702d38cb86d" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/WarrantyDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#WarrantyDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/WarrantyDetails" xlink:type="extended" id="if36e00d0b01947b08c1f4ce779177d9c_WarrantyDetails">
    <link:loc xlink:type="locator" xlink:label="loc_virc_WarrantyLineItems_1487f4ad-4766-4293-ad2a-86f7f1c7af31" xlink:href="virc-20230430.xsd#virc_WarrantyLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ProductWarranty_7e709783-3490-4b55-95b7-2683a852b128" xlink:href="virc-20230430.xsd#virc_ProductWarranty"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_virc_WarrantyLineItems_1487f4ad-4766-4293-ad2a-86f7f1c7af31" xlink:to="loc_virc_ProductWarranty_7e709783-3490-4b55-95b7-2683a852b128" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ScheduleOfWarrantyTable_01d42784-354a-4e1f-a00b-0c415e6131f7" xlink:href="virc-20230430.xsd#virc_ScheduleOfWarrantyTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_virc_WarrantyLineItems_1487f4ad-4766-4293-ad2a-86f7f1c7af31" xlink:to="loc_virc_ScheduleOfWarrantyTable_01d42784-354a-4e1f-a00b-0c415e6131f7" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_e5f47cc5-96d1-4791-b338-fc659ceace7e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_virc_ScheduleOfWarrantyTable_01d42784-354a-4e1f-a00b-0c415e6131f7" xlink:to="loc_srt_RangeAxis_e5f47cc5-96d1-4791-b338-fc659ceace7e" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_e5f47cc5-96d1-4791-b338-fc659ceace7e_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_e5f47cc5-96d1-4791-b338-fc659ceace7e" xlink:to="loc_srt_RangeMember_e5f47cc5-96d1-4791-b338-fc659ceace7e_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_60ec6307-97a5-49d8-b236-a69a52da1ef7" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_e5f47cc5-96d1-4791-b338-fc659ceace7e" xlink:to="loc_srt_RangeMember_60ec6307-97a5-49d8-b236-a69a52da1ef7" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_ee9d2197-0e29-4589-9fc8-3f1baf8ac5ab" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_60ec6307-97a5-49d8-b236-a69a52da1ef7" xlink:to="loc_srt_MaximumMember_ee9d2197-0e29-4589-9fc8-3f1baf8ac5ab" xlink:type="arc" order="0"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://www.virco.com/role/ContingenciesDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#ContingenciesDetails"/>
  <link:definitionLink xlink:role="http://www.virco.com/role/ContingenciesDetails" xlink:type="extended" id="i7579bc7ebf1343fd812de60de16d8251_ContingenciesDetails">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesLineItems_4e17d154-e8b8-46c2-8074-57450928ddfb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LossContingenciesLineItems"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SelfInsuranceRetention_d222e15a-c15c-4afd-81bc-1ce7611e3a79" xlink:href="virc-20230430.xsd#virc_SelfInsuranceRetention"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_us-gaap_LossContingenciesLineItems_4e17d154-e8b8-46c2-8074-57450928ddfb" xlink:to="loc_virc_SelfInsuranceRetention_d222e15a-c15c-4afd-81bc-1ce7611e3a79" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LossContingenciesTable"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="loc_us-gaap_LossContingenciesLineItems_4e17d154-e8b8-46c2-8074-57450928ddfb" xlink:to="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:type="arc" order="1" xbrldt:closed="true" xbrldt:contextElement="segment"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_2b9955d0-5d92-4891-bc54-523516de35c9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:to="loc_srt_RangeAxis_2b9955d0-5d92-4891-bc54-523516de35c9" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_2b9955d0-5d92-4891-bc54-523516de35c9_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_RangeAxis_2b9955d0-5d92-4891-bc54-523516de35c9" xlink:to="loc_srt_RangeMember_2b9955d0-5d92-4891-bc54-523516de35c9_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_ea337407-4659-414e-999e-393c7050a2f4" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_RangeAxis_2b9955d0-5d92-4891-bc54-523516de35c9" xlink:to="loc_srt_RangeMember_ea337407-4659-414e-999e-393c7050a2f4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_3a387d53-5fa4-4534-b5ff-7873c016c245" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_RangeMember_ea337407-4659-414e-999e-393c7050a2f4" xlink:to="loc_srt_MaximumMember_3a387d53-5fa4-4534-b5ff-7873c016c245" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_1461e380-eb20-4a89-bbda-9fea571a1699" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:to="loc_srt_ProductOrServiceAxis_1461e380-eb20-4a89-bbda-9fea571a1699" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_1461e380-eb20-4a89-bbda-9fea571a1699_default" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="loc_srt_ProductOrServiceAxis_1461e380-eb20-4a89-bbda-9fea571a1699" xlink:to="loc_srt_ProductsAndServicesDomain_1461e380-eb20-4a89-bbda-9fea571a1699_default" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="loc_srt_ProductOrServiceAxis_1461e380-eb20-4a89-bbda-9fea571a1699" xlink:to="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ProductLiabilityMember_c537e081-4aa6-4825-985e-85a188e80d9f" xlink:href="virc-20230430.xsd#virc_ProductLiabilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_ProductLiabilityMember_c537e081-4aa6-4825-985e-85a188e80d9f" xlink:type="arc" order="0"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_WorkerscompensationLiabilityInsuranceMember_ae78602c-5586-4ed8-8943-6c33044ff93d" xlink:href="virc-20230430.xsd#virc_WorkerscompensationLiabilityInsuranceMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_WorkerscompensationLiabilityInsuranceMember_ae78602c-5586-4ed8-8943-6c33044ff93d" xlink:type="arc" order="1"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_GeneralLiabilityLossMember_4dffe8cd-0268-4945-968e-cd9c48e009cc" xlink:href="virc-20230430.xsd#virc_GeneralLiabilityLossMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_GeneralLiabilityLossMember_4dffe8cd-0268-4945-968e-cd9c48e009cc" xlink:type="arc" order="2"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AutomobileLiabilityLossMember_984a993d-fa99-43c5-a15a-e64f19c8cc86" xlink:href="virc-20230430.xsd#virc_AutomobileLiabilityLossMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_AutomobileLiabilityLossMember_984a993d-fa99-43c5-a15a-e64f19c8cc86" xlink:type="arc" order="3"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LossLiabilityMember_e8a50b9f-a582-421e-8b87-64d758af39d1" xlink:href="virc-20230430.xsd#virc_LossLiabilityMember"/>
    <link:definitionArc xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_LossLiabilityMember_e8a50b9f-a582-421e-8b87-64d758af39d1" xlink:type="arc" order="4"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>8
<FILENAME>virc-20230430_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2023 Workiva-->
<!--r:90287618-5607-4752-928b-06db944cd7f3,g:6eff466f-1bee-465d-8a0c-2ce3a06f0245-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_03cb9912-e9dc-4b7c-9d51-a9af4f7f49e4_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Stockholders' Equity [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:to="lab_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_a37fdfcb-d1ba-41ff-8e26-b162722233b2_verboseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to reconcile net loss to net cash used in operating activities:</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_29b0f251-0df7-4c65-a757-2b54884d3225_totalLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining balance of lease payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_d8e494a6-a1ad-464b-bc3c-e4ae63dcd876_verboseLabel_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision for doubtful accounts</link:label>
    <link:label id="lab_us-gaap_ProvisionForDoubtfulAccounts_label_en-US" xlink:label="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, Credit Loss Expense (Reversal)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProvisionForDoubtfulAccounts" xlink:to="lab_us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_1e504d42-395f-4467-a0ca-f9227f7cdb13_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax benefit</link:label>
    <link:label id="lab_us-gaap_IncomeTaxExpenseBenefit_label_en-US" xlink:label="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Expense (Benefit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxExpenseBenefit" xlink:to="lab_us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_c888dbe7-8e76-4f4a-9c6c-c5beca128bd6_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Valuation allowance</link:label>
    <link:label id="lab_us-gaap_DeferredTaxAssetsValuationAllowance_label_en-US" xlink:label="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Tax Assets, Valuation Allowance</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:to="lab_us-gaap_DeferredTaxAssetsValuationAllowance" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_c3368d4d-ea7f-4415-8e31-f4a0e48ec618_terseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred tax assets, net</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxAssetsNet_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Tax Assets, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxAssetsNet" xlink:to="lab_us-gaap_DeferredIncomeTaxAssetsNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_01dee1f0-6762-41f0-b758-a80d69fc3313_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Product Warranty Liability</link:label>
    <link:label id="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_b56d7481-c210-4133-9fde-8e46596d85cf_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, par value (usd per share)</link:label>
    <link:label id="lab_us-gaap_PreferredStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_PreferredStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_95b2f61b-694d-4c84-86f4-4ed95d454b00_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2028</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_a416ed51-6348-4bb7-b6ac-f0e73abf93e5_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeStatementAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementAbstract" xlink:to="lab_us-gaap_IncomeStatementAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_DebtInstrumentCovenantPeriodAxis_4e8f08de-8218-48b2-84bb-de8ba80c645b_terseLabel_en-US" xlink:label="lab_virc_DebtInstrumentCovenantPeriodAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Covenant Period [Axis]</link:label>
    <link:label id="lab_virc_DebtInstrumentCovenantPeriodAxis_label_en-US" xlink:label="lab_virc_DebtInstrumentCovenantPeriodAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Covenant Period [Axis]</link:label>
    <link:label id="lab_virc_DebtInstrumentCovenantPeriodAxis_documentation_en-US" xlink:label="lab_virc_DebtInstrumentCovenantPeriodAxis" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Covenant Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantPeriodAxis" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantPeriodAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_DebtInstrumentCovenantPeriodAxis" xlink:to="lab_virc_DebtInstrumentCovenantPeriodAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressPostalZipCode_7444c42c-3dc5-44d4-8190-5d08491130d3_terseLabel_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:label id="lab_dei_EntityAddressPostalZipCode_label_en-US" xlink:label="lab_dei_EntityAddressPostalZipCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressPostalZipCode" xlink:to="lab_dei_EntityAddressPostalZipCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_04ed9f1e-8456-4ae8-97b6-fffdbaad54b4_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapitalMember_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid-in Capital [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapitalMember" xlink:to="lab_us-gaap_AdditionalPaidInCapitalMember" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_96cbece6-0246-4e0d-a183-0b5a7668b59d_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalPeriodFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalPeriodFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalPeriodFocus" xlink:to="lab_dei_DocumentFiscalPeriodFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_eb36dcc1-e1c9-4577-a66f-edea7cf7e3b4_verboseLabel_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs of goods sold</link:label>
    <link:label id="lab_us-gaap_CostOfGoodsAndServicesSold_label_en-US" xlink:label="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Goods and Services Sold</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfGoodsAndServicesSold" xlink:to="lab_us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement_51f57c06-bf0b-4a13-ac7b-759249a72b21_terseLabel_en-US" xlink:label="lab_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase in inventory sublimit under credit agreement</link:label>
    <link:label id="lab_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement_label_en-US" xlink:label="lab_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) In Inventory Sublimit Under Credit Agreement</link:label>
    <link:label id="lab_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement_documentation_en-US" xlink:label="lab_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) In Inventory Sublimit Under Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement" xlink:to="lab_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_9a9efef3-0b58-424a-aee1-c040cb3e1e69_verboseLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, plant and equipment:</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentAbstract_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_f9ad5513-3994-4bd0-9c60-ee71e7581d3a_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_d1323f80-95cd-4a22-804e-039b0ad4a076_totalLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Totals (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:to="lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_478d973f-9399-4cac-a8d9-82579dcf7247_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares outstanding (shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesOutstanding" xlink:to="lab_us-gaap_PreferredStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_b3bf147b-93ab-4970-9b7c-30bbb9545778_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less accumulated depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:to="lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_b6631f59-a0c0-4958-86e3-59af3f2f7e49_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Inventory</link:label>
    <link:label id="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_InventoryMember_11d3c530-d43c-4932-af54-acbcd2485671_verboseLabel_en-US" xlink:label="lab_virc_InventoryMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory [Member]</link:label>
    <link:label id="lab_virc_InventoryMember_label_en-US" xlink:label="lab_virc_InventoryMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory [Member]</link:label>
    <link:label id="lab_virc_InventoryMember_documentation_en-US" xlink:label="lab_virc_InventoryMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_InventoryMember" xlink:href="virc-20230430.xsd#virc_InventoryMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_InventoryMember" xlink:to="lab_virc_InventoryMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_f08145aa-38ff-4c49-8d6b-890e29aa8848_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentAxis_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentAxis" xlink:to="lab_us-gaap_DebtInstrumentAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingenciesLineItems_1eca94cd-3e8e-4601-bf3a-dae2557a4ca1_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingenciesLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss Contingencies [Line Items]</link:label>
    <link:label id="lab_us-gaap_LossContingenciesLineItems_label_en-US" xlink:label="lab_us-gaap_LossContingenciesLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss Contingencies [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LossContingenciesLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingenciesLineItems" xlink:to="lab_us-gaap_LossContingenciesLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_6752ef99-a466-4643-b25a-3f676c4e0da8_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentGross" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_CovenantPeriod1Member_a8211b69-284d-43d2-99c7-d7a32fb071f3_terseLabel_en-US" xlink:label="lab_virc_CovenantPeriod1Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Consecutive Four Fiscal Quarters Ending July 31, 2020</link:label>
    <link:label id="lab_virc_CovenantPeriod1Member_label_en-US" xlink:label="lab_virc_CovenantPeriod1Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Covenant Period 1 [Member]</link:label>
    <link:label id="lab_virc_CovenantPeriod1Member_documentation_en-US" xlink:label="lab_virc_CovenantPeriod1Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Covenant Period 1</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_CovenantPeriod1Member" xlink:href="virc-20230430.xsd#virc_CovenantPeriod1Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_CovenantPeriod1Member" xlink:to="lab_virc_CovenantPeriod1Member" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_c2db3e13-400c-4dc6-917a-7d60303c0378_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit facility, maximum borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_93924f91-ff4d-4bab-8b22-d2f93f35a261_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Defined Benefit Plans Disclosures</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Defined Benefit Plans Disclosures [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:to="lab_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_5144b89b-aa5a-48d4-9626-53c5a91298e7_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract" xlink:to="lab_us-gaap_IncomeTaxDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyExpense_163a58df-762f-4466-80c9-11ebb480f879_negatedLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyExpense" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Costs incurred</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyExpense_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyExpense" xlink:to="lab_us-gaap_ProductWarrantyExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableMember_fb758a4f-57f3-4c0a-9ab9-9f2d82e29206_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts receivable [Member]</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableMember_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableMember" xlink:to="lab_us-gaap_AccountsReceivableMember" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_StockIncentivePlan2019Member_f88c2f4c-70bd-4797-bf1a-21a8a0df9e07_terseLabel_en-US" xlink:label="lab_virc_StockIncentivePlan2019Member" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2019 Plan [Member]</link:label>
    <link:label id="lab_virc_StockIncentivePlan2019Member_label_en-US" xlink:label="lab_virc_StockIncentivePlan2019Member" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Incentive Plan 2019 [Member]</link:label>
    <link:label id="lab_virc_StockIncentivePlan2019Member_documentation_en-US" xlink:label="lab_virc_StockIncentivePlan2019Member" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock Incentive Plan 2019 [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_StockIncentivePlan2019Member" xlink:href="virc-20230430.xsd#virc_StockIncentivePlan2019Member"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_StockIncentivePlan2019Member" xlink:to="lab_virc_StockIncentivePlan2019Member" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_NoncashRentExpense_e37088a6-1452-46a6-9650-dc2725111053_negatedTerseLabel_en-US" xlink:label="lab_virc_NoncashRentExpense" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-cash lease benefits</link:label>
    <link:label id="lab_virc_NoncashRentExpense_label_en-US" xlink:label="lab_virc_NoncashRentExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-cash Rent Expense</link:label>
    <link:label id="lab_virc_NoncashRentExpense_documentation_en-US" xlink:label="lab_virc_NoncashRentExpense" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-cash Rent Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_NoncashRentExpense" xlink:href="virc-20230430.xsd#virc_NoncashRentExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_NoncashRentExpense" xlink:to="lab_virc_NoncashRentExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherIncomeAndExpensesAbstract_e621cfdc-e346-4228-84b1-d784b459b95c_terseLabel_en-US" xlink:label="lab_us-gaap_OtherIncomeAndExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Income and Expenses [Abstract]</link:label>
    <link:label id="lab_us-gaap_OtherIncomeAndExpensesAbstract_label_en-US" xlink:label="lab_us-gaap_OtherIncomeAndExpensesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Income and Expenses [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndExpensesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndExpensesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="lab_us-gaap_OtherIncomeAndExpensesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockValue_70db2835-adae-4bad-96cc-f118ebf6d0dd_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Authorized 25,000,000 shares, $0.01 par value; issued and outstanding 16,210,985 shares at 4/30/2023 and 1/31/2023, and 16,102,023 at 4/30/2022</link:label>
    <link:label id="lab_us-gaap_CommonStockValue_label_en-US" xlink:label="lab_us-gaap_CommonStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockValue" xlink:to="lab_us-gaap_CommonStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdditionalPaidInCapital_b499759b-70df-41e9-b277-83c1be5ae92e_terseLabel_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapital" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional paid-in capital</link:label>
    <link:label id="lab_us-gaap_AdditionalPaidInCapital_label_en-US" xlink:label="lab_us-gaap_AdditionalPaidInCapital" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Additional Paid in Capital</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdditionalPaidInCapital" xlink:to="lab_us-gaap_AdditionalPaidInCapital" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_1c32263d-0035-4afd-89da-554c7fbe3a94_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentNameDomain_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentNameDomain" xlink:to="lab_us-gaap_DebtInstrumentNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_de407a7f-56ce-43c8-922f-5cb5d631c5b4_verboseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Provision</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Increase for Warranties Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:to="lab_us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeMember_8e5eb954-edf5-4b55-a156-2bf3b939cae6_terseLabel_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:label id="lab_srt_RangeMember_label_en-US" xlink:label="lab_srt_RangeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeMember" xlink:to="lab_srt_RangeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_7c2700dd-1966-4818-989d-1b167e4f735e_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest rate</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="lab_us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_b066462f-019b-4fc0-9bc0-2921a0597a35_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average discount rate</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_8db65383-a684-4713-b7e2-0770e57813b0_terseLabel_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term lease cost</link:label>
    <link:label id="lab_us-gaap_ShortTermLeaseCost_label_en-US" xlink:label="lab_us-gaap_ShortTermLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-Term Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShortTermLeaseCost" xlink:to="lab_us-gaap_ShortTermLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_1ca71f3d-6fc5-49ea-919a-f91fd2ff99d4_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Payment Arrangement [Abstract]</link:label>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyDisclosureTextBlock_cfa86f37-b912-4bdf-8a64-b15d9346d29d_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty Accrual</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:to="lab_us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_2ca26d11-972c-493b-b3b5-99e87e8b2c6d_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares authorized (shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesAuthorized" xlink:to="lab_us-gaap_PreferredStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_SeasonalityAbstract_02aa3dcc-7f97-4bd3-9243-68e7e5096695_terseLabel_en-US" xlink:label="lab_virc_SeasonalityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality [Abstract]</link:label>
    <link:label id="lab_virc_SeasonalityAbstract_label_en-US" xlink:label="lab_virc_SeasonalityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality [Abstract]</link:label>
    <link:label id="lab_virc_SeasonalityAbstract_documentation_en-US" xlink:label="lab_virc_SeasonalityAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SeasonalityAbstract" xlink:href="virc-20230430.xsd#virc_SeasonalityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_SeasonalityAbstract" xlink:to="lab_virc_SeasonalityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_64a832a2-1d72-4f83-b668-e89d568a56cd_periodStartLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash at beginning of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_c08ec411-c541-4f79-bfe9-3e53014ee830_periodEndLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash at end of period</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_4eef52dd-d50c-4900-99a1-372ac8d5d3df_totalLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Benefit cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Net Periodic Benefit Cost (Credit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:to="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_6ff61ff4-58e5-4610-bdca-1d1dfc665a82_verboseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt_9c3ad30b-d1ef-4c6e-9380-57af2be78c00_verboseLabel_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Borrowing from long-term debt</link:label>
    <link:label id="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt_label_en-US" xlink:label="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Proceeds from Issuance of Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:to="lab_us-gaap_ProceedsFromIssuanceOfLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_5d00bacb-1607-4b08-aa11-82e4c27b4eb3_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares issued (shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesIssued" xlink:to="lab_us-gaap_CommonStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetIncomeLoss_14f162ee-949d-4ba9-897b-c208365ca09f_totalLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_26b8f9fe-d6c2-44e8-8cc7-690cc7711332_terseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_e1d5730a-c4f5-4550-9215-ace356ef4afa_verboseLabel_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income (loss)</link:label>
    <link:label id="lab_us-gaap_NetIncomeLoss_label_en-US" xlink:label="lab_us-gaap_NetIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Income (Loss) Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetIncomeLoss" xlink:to="lab_us-gaap_NetIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_ea556507-fa9f-480e-913e-e8609e3ec787_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of prior service cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Amortization of Prior Service Cost (Credit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:to="lab_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_29ca6291-1726-4ed9-aed0-3c7310ed7831_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeAxis_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeAxis" xlink:to="lab_us-gaap_SubsequentEventTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanTypeDomain_e3e24173-f470-4b96-be79-8b56f76ecf24_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Domain]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanTypeDomain_label_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanTypeDomain" xlink:to="lab_us-gaap_RetirementPlanTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_f7ac5521-a2cc-4710-af2a-4e9f70beb0db_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationDomain_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationDomain" xlink:to="lab_us-gaap_IncomeStatementLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EquityComponentDomain_c1dc4253-a341-40c2-a65a-f717d862a292_terseLabel_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:label id="lab_us-gaap_EquityComponentDomain_label_en-US" xlink:label="lab_us-gaap_EquityComponentDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EquityComponentDomain" xlink:to="lab_us-gaap_EquityComponentDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_AmendmentFlag_3846b1ee-5524-4625-8fd0-3d0a15b92de2_terseLabel_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:label id="lab_dei_AmendmentFlag_label_en-US" xlink:label="lab_dei_AmendmentFlag" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amendment Flag</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_AmendmentFlag" xlink:to="lab_dei_AmendmentFlag" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_c705c3f5-2608-4c88-a0dd-b4b536fe39a5_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_e8e94907-fda0-45e8-b009-1a709bafe143_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventTypeDomain_label_en-US" xlink:label="lab_us-gaap_SubsequentEventTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventTypeDomain" xlink:to="lab_us-gaap_SubsequentEventTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseCost_b39859f8-a090-4df2-849c-7b643ed1970f_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease cost</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseCost_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseCost" xlink:to="lab_us-gaap_OperatingLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_59b1e927-a9d6-4eef-92c1-0de8b5eb9627_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Face amount</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentFaceAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentFaceAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Face Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFaceAmount" xlink:to="lab_us-gaap_DebtInstrumentFaceAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_acb374f0-d020-486f-9baa-003d2489b958_totalLabel_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net comprehensive loss</link:label>
    <link:label id="lab_us-gaap_ComprehensiveIncomeNetOfTax_label_en-US" xlink:label="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Comprehensive Income (Loss), Net of Tax, Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ComprehensiveIncomeNetOfTax" xlink:to="lab_us-gaap_ComprehensiveIncomeNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_976ea519-c803-4809-b4c2-334cc38aa0ee_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeasesTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Leases [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeasesTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeasesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_DeliveryCostsTextBlock_b089d5fe-643a-49b3-8d52-aaaf8e3cc40e_terseLabel_en-US" xlink:label="lab_virc_DeliveryCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Delivery Costs</link:label>
    <link:label id="lab_virc_DeliveryCostsTextBlock_label_en-US" xlink:label="lab_virc_DeliveryCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Delivery Costs [Text Block]</link:label>
    <link:label id="lab_virc_DeliveryCostsTextBlock_documentation_en-US" xlink:label="lab_virc_DeliveryCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Delivery Costs [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DeliveryCostsTextBlock" xlink:href="virc-20230430.xsd#virc_DeliveryCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_DeliveryCostsTextBlock" xlink:to="lab_virc_DeliveryCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsOfFinancingCosts_e5a5eb6a-5fee-409f-ad0c-906dc6fbbb60_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsOfFinancingCosts" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payment on deferred financing costs</link:label>
    <link:label id="lab_us-gaap_PaymentsOfFinancingCosts_label_en-US" xlink:label="lab_us-gaap_PaymentsOfFinancingCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments of Financing Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsOfFinancingCosts" xlink:to="lab_us-gaap_PaymentsOfFinancingCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameAxis_bab70dee-c7e0-4112-a8c9-4edb983490d9_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:label id="lab_us-gaap_PlanNameAxis_label_en-US" xlink:label="lab_us-gaap_PlanNameAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameAxis" xlink:to="lab_us-gaap_PlanNameAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax_5665510c-b79a-49ef-9219-67f593899164_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension adjustments, tax</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive (Income) Loss, Defined Benefit Plan, after Reclassification Adjustment, Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCurrentReportingStatus_89372ce3-be7b-42e2-8c9a-3ae14fef9d14_terseLabel_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:label id="lab_dei_EntityCurrentReportingStatus_label_en-US" xlink:label="lab_dei_EntityCurrentReportingStatus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCurrentReportingStatus" xlink:to="lab_dei_EntityCurrentReportingStatus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_1c010a01-1862-41d5-8a17-f643ab1cb83b_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other assets, net</link:label>
    <link:label id="lab_us-gaap_OtherAssetsNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAssetsNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Assets, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAssetsNoncurrent" xlink:to="lab_us-gaap_OtherAssetsNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_AmendedAndRestatedCreditAgreementMember_c83f3b41-4fd4-45b0-9a80-e343c4ac1b2a_terseLabel_en-US" xlink:label="lab_virc_AmendedAndRestatedCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amended and Restated Credit Agreement</link:label>
    <link:label id="lab_virc_AmendedAndRestatedCreditAgreementMember_label_en-US" xlink:label="lab_virc_AmendedAndRestatedCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amended and Restated Credit Agreement [Member]</link:label>
    <link:label id="lab_virc_AmendedAndRestatedCreditAgreementMember_documentation_en-US" xlink:label="lab_virc_AmendedAndRestatedCreditAgreementMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amended and Restated Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AmendedAndRestatedCreditAgreementMember" xlink:href="virc-20230430.xsd#virc_AmendedAndRestatedCreditAgreementMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_AmendedAndRestatedCreditAgreementMember" xlink:to="lab_virc_AmendedAndRestatedCreditAgreementMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_c1e88365-31a2-4a0b-8a49-aee8df63859b_verboseLabel_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:label id="lab_us-gaap_DepreciationDepletionAndAmortization_label_en-US" xlink:label="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Depreciation, Depletion and Amortization</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DepreciationDepletionAndAmortization" xlink:to="lab_us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_LineOfCreditFacilityBorrowingCapacityTerm_1a0501c3-b932-41fc-a565-6bbd7ee55217_terseLabel_en-US" xlink:label="lab_virc_LineOfCreditFacilityBorrowingCapacityTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit facility, term</link:label>
    <link:label id="lab_virc_LineOfCreditFacilityBorrowingCapacityTerm_label_en-US" xlink:label="lab_virc_LineOfCreditFacilityBorrowingCapacityTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Borrowing Capacity, Term</link:label>
    <link:label id="lab_virc_LineOfCreditFacilityBorrowingCapacityTerm_documentation_en-US" xlink:label="lab_virc_LineOfCreditFacilityBorrowingCapacityTerm" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line Of Credit Facility, Borrowing Capacity, Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineOfCreditFacilityBorrowingCapacityTerm" xlink:href="virc-20230430.xsd#virc_LineOfCreditFacilityBorrowingCapacityTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_LineOfCreditFacilityBorrowingCapacityTerm" xlink:to="lab_virc_LineOfCreditFacilityBorrowingCapacityTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_56be1fd9-9db3-4851-a174-7500d0d931d9_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unused portion fee rate</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Unused Capacity, Commitment Fee Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:to="lab_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_SelfInsuranceRetention_0ff67e73-7c44-4d02-aa02-ffb8d6a6b484_terseLabel_en-US" xlink:label="lab_virc_SelfInsuranceRetention" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Self insurance retention</link:label>
    <link:label id="lab_virc_SelfInsuranceRetention_label_en-US" xlink:label="lab_virc_SelfInsuranceRetention" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Self Insurance Retention</link:label>
    <link:label id="lab_virc_SelfInsuranceRetention_documentation_en-US" xlink:label="lab_virc_SelfInsuranceRetention" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Self Insurance Retention</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SelfInsuranceRetention" xlink:href="virc-20230430.xsd#virc_SelfInsuranceRetention"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_SelfInsuranceRetention" xlink:to="lab_virc_SelfInsuranceRetention" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PlanNameDomain_2f647b40-ee9f-4e38-9617-ef4515a3be8b_terseLabel_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:label id="lab_us-gaap_PlanNameDomain_label_en-US" xlink:label="lab_us-gaap_PlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PlanNameDomain" xlink:to="lab_us-gaap_PlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_40d6ee0e-7bc7-463e-a8fc-d13c4ddd4e97_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining of 2024</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesNoncurrent_9b3b13d8-ae00-4809-b4df-c8a06b4731e2_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total non-current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesNoncurrent" xlink:to="lab_us-gaap_LiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_68fcf875-b926-4a93-acbf-993f8e5f645f_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfCashFlowsAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract" xlink:to="lab_us-gaap_StatementOfCashFlowsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressStateOrProvince_2cbdcc2a-4375-4278-91e0-87e8bf85736b_terseLabel_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:label id="lab_dei_EntityAddressStateOrProvince_label_en-US" xlink:label="lab_dei_EntityAddressStateOrProvince" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressStateOrProvince" xlink:to="lab_dei_EntityAddressStateOrProvince" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement_13ec2bce-3cc4-4279-833d-be43bec2c817_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Plan settlement</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Benefit Obligation, (Increase) Decrease for Remeasurement due to Settlement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement" xlink:to="lab_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AwardTypeAxis_c538146d-4255-465c-8332-30377dafd3ee_terseLabel_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:label id="lab_us-gaap_AwardTypeAxis_label_en-US" xlink:label="lab_us-gaap_AwardTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AwardTypeAxis" xlink:to="lab_us-gaap_AwardTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_ddd46c5c-bdad-498f-ae45-1b5c560c6330_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash used in operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_b5a43329-636f-4944-a30f-19bd2f0204dd_terseLabel_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:label id="lab_dei_EntityIncorporationStateCountryCode_label_en-US" xlink:label="lab_dei_EntityIncorporationStateCountryCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityIncorporationStateCountryCode" xlink:to="lab_dei_EntityIncorporationStateCountryCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_656835dd-fb1c-49ce-b3b8-4ddba9820ec9_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current portion operating lease liability</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_c0c37922-51cc-42b8-984e-6cdb83a19e02_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Short-term lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityCurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAbstract_1ca320da-06fc-4a6e-a3d6-b6c057b67dfc_verboseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAbstract" xlink:to="lab_us-gaap_LiabilitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_5d2dad36-bce9-43d1-b02e-18b02656928f_totalLabel_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net property, plant and equipment</link:label>
    <link:label id="lab_us-gaap_PropertyPlantAndEquipmentNet_label_en-US" xlink:label="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Property, Plant and Equipment, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentNet" xlink:to="lab_us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CapitalLeaseObligationsIncurred_cce7b8fd-b9d7-49d9-b3dd-b2b8327c292c_terseLabel_en-US" xlink:label="lab_us-gaap_CapitalLeaseObligationsIncurred" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Right-of-use assets obtained in exchange for new lease liabilities</link:label>
    <link:label id="lab_us-gaap_CapitalLeaseObligationsIncurred_label_en-US" xlink:label="lab_us-gaap_CapitalLeaseObligationsIncurred" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease Obligation Incurred</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalLeaseObligationsIncurred" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalLeaseObligationsIncurred"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CapitalLeaseObligationsIncurred" xlink:to="lab_us-gaap_CapitalLeaseObligationsIncurred" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermDebt_ee929987-f5a8-4107-91b8-a577231d15c5_negatedLabel_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repayment of long-term debt</link:label>
    <link:label id="lab_us-gaap_RepaymentsOfLongTermDebt_label_en-US" xlink:label="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Repayments of Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RepaymentsOfLongTermDebt" xlink:to="lab_us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DomesticPlanMember_2a9b77db-04c6-48bd-ac0a-827e00de3c7c_terseLabel_en-US" xlink:label="lab_us-gaap_DomesticPlanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic Plan [Member]</link:label>
    <link:label id="lab_us-gaap_DomesticPlanMember_label_en-US" xlink:label="lab_us-gaap_DomesticPlanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Domestic Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticPlanMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticPlanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DomesticPlanMember" xlink:to="lab_us-gaap_DomesticPlanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent_b3fba2ac-7753-4374-bdcf-ad4267aabf67_terseLabel_en-US" xlink:label="lab_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension expense</link:label>
    <link:label id="lab_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent_label_en-US" xlink:label="lab_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Periodic Defined Benefits Expense (Reversal of Expense), Excluding Service Cost Component</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent" xlink:to="lab_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_d742aea2-8398-41d6-9c3a-dbdc576c257d_negatedLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension adjustments, net of tax effect</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive (Income) Loss, Defined Benefit Plan, after Reclassification Adjustment, after Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_a205e55f-4d32-4f34-971a-0e4cbf15bb6d_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum annual contributions per employee, percent</link:label>
    <link:label id="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_label_en-US" xlink:label="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:to="lab_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityAxis_90abad6f-b494-4b12-915c-b44795866958_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lender Name [Axis]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityAxis_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lender Name [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis" xlink:to="lab_us-gaap_LineOfCreditFacilityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract_927201fb-cfd5-4333-ad32-f7dc7a6cc6fb_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock:</link:label>
    <link:label id="lab_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Number of Shares, Par Value and Other Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:to="lab_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_129bc576-47b6-432b-82e6-1a14399ed09a_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Forfeited in period (shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebt_90c789a4-cc3f-49dd-a338-ded987f44cd8_totalLabel_en-US" xlink:label="lab_us-gaap_LongTermDebt" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebt_af804560-ba81-4d39-b6cb-e1c3ad63af4f_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebt" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebt_label_en-US" xlink:label="lab_us-gaap_LongTermDebt" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebt" xlink:to="lab_us-gaap_LongTermDebt" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_082b5a97-8e63-4edc-9409-f68e9b9f7aa2_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term debt, less current portion</link:label>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_291f0294-6639-426d-a234-555eac7b4cf2_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-current portion</link:label>
    <link:label id="lab_us-gaap_LongTermDebtNoncurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Excluding Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtNoncurrent" xlink:to="lab_us-gaap_LongTermDebtNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_IncrementalCreditLineIncreaseDecrease_5bdeec6b-5265-4f18-9b0d-6a904a9097e4_terseLabel_en-US" xlink:label="lab_virc_IncrementalCreditLineIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Credit Line Increase (Decrease)</link:label>
    <link:label id="lab_virc_IncrementalCreditLineIncreaseDecrease_label_en-US" xlink:label="lab_virc_IncrementalCreditLineIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Credit Line Increase (Decrease)</link:label>
    <link:label id="lab_virc_IncrementalCreditLineIncreaseDecrease_documentation_en-US" xlink:label="lab_virc_IncrementalCreditLineIncreaseDecrease" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Credit Line Increase (Decrease)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncrementalCreditLineIncreaseDecrease" xlink:href="virc-20230430.xsd#virc_IncrementalCreditLineIncreaseDecrease"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_IncrementalCreditLineIncreaseDecrease" xlink:to="lab_virc_IncrementalCreditLineIncreaseDecrease" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_e2cad1fd-147c-4f4a-96c5-b9621857d28a_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares authorized (shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesAuthorized" xlink:to="lab_us-gaap_CommonStockSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_0ab58a10-504e-4ec9-92b4-44af2d3ca047_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted-average remaining lease term (years)</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_1077bbe7-f240-428b-a136-df5007567ec8_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Comprehensive Income [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:to="lab_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_a6605dcf-fe3b-4d04-b09d-0fd4775eb265_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-based Compensation Arrangement by Share-based Payment Award [Line Items]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MaximumMember_7cc1b428-0bea-4b9d-ba53-60e690f6ed66_terseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum</link:label>
    <link:label id="lab_srt_MaximumMember_be2d3f55-3af8-476e-8a24-b79ffb5d4d71_verboseLabel_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum [Member]</link:label>
    <link:label id="lab_srt_MaximumMember_label_en-US" xlink:label="lab_srt_MaximumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MaximumMember" xlink:to="lab_srt_MaximumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_82773d82-23cb-45f8-9475-455dba6efe66_verboseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Investing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Investing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_bdc90eff-db59-4b59-98d5-7a2b74db91a6_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated other comprehensive loss</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Income (Loss), Net of Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_5daafe8c-ffd4-44ff-bd82-94eaeb69429e_terseLabel_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:label id="lab_dei_EntityCommonStockSharesOutstanding_label_en-US" xlink:label="lab_dei_EntityCommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Common Stock, Shares Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCommonStockSharesOutstanding" xlink:to="lab_dei_EntityCommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_CreditAgreementAmendmentFee_83ccf65d-c32b-4a14-98e0-a121f700f6da_terseLabel_en-US" xlink:label="lab_virc_CreditAgreementAmendmentFee" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Waiver and amendment fee</link:label>
    <link:label id="lab_virc_CreditAgreementAmendmentFee_label_en-US" xlink:label="lab_virc_CreditAgreementAmendmentFee" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Agreement, Amendment Fee</link:label>
    <link:label id="lab_virc_CreditAgreementAmendmentFee_documentation_en-US" xlink:label="lab_virc_CreditAgreementAmendmentFee" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Agreement, Amendment Fee</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_CreditAgreementAmendmentFee" xlink:href="virc-20230430.xsd#virc_CreditAgreementAmendmentFee"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_CreditAgreementAmendmentFee" xlink:to="lab_virc_CreditAgreementAmendmentFee" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_DebtInstrumentCovenantPeriodDomain_6a16fb92-7da4-4eb3-a8b3-345013c5bfbe_terseLabel_en-US" xlink:label="lab_virc_DebtInstrumentCovenantPeriodDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Covenant Period [Domain]</link:label>
    <link:label id="lab_virc_DebtInstrumentCovenantPeriodDomain_label_en-US" xlink:label="lab_virc_DebtInstrumentCovenantPeriodDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Covenant Period [Domain]</link:label>
    <link:label id="lab_virc_DebtInstrumentCovenantPeriodDomain_documentation_en-US" xlink:label="lab_virc_DebtInstrumentCovenantPeriodDomain" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument Covenant Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantPeriodDomain" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantPeriodDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_DebtInstrumentCovenantPeriodDomain" xlink:to="lab_virc_DebtInstrumentCovenantPeriodDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_9ab01425-acb7-4089-8e4b-f707fe3cf915_terseLabel_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
    <link:label id="lab_us-gaap_RevolvingCreditFacilityMember_label_en-US" xlink:label="lab_us-gaap_RevolvingCreditFacilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevolvingCreditFacilityMember" xlink:to="lab_us-gaap_RevolvingCreditFacilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrent_2727154e-3c9a-46da-b43b-c137267d3b2c_totalLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current assets</link:label>
    <link:label id="lab_us-gaap_AssetsCurrent_label_en-US" xlink:label="lab_us-gaap_AssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrent" xlink:to="lab_us-gaap_AssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoriesMember_37abafb2-71c6-4c5a-83f7-91cc9124c741_terseLabel_en-US" xlink:label="lab_us-gaap_InventoriesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories [Member]</link:label>
    <link:label id="lab_us-gaap_InventoriesMember_label_en-US" xlink:label="lab_us-gaap_InventoriesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoriesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoriesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoriesMember" xlink:to="lab_us-gaap_InventoriesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_cca703be-1f9b-45a0-a94d-4dd854df5492_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:to="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_4b96201a-f31f-4c08-b570-26c7f1a8d876_terseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Accounting Pronouncements and Changes in Accounting Principles [Abstract]</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update and Change in Accounting Principle [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:to="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_c6dfcaf4-739f-45a0-855a-f26d23cfe6c5_terseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred stock, shares issued (shares)</link:label>
    <link:label id="lab_us-gaap_PreferredStockSharesIssued_label_en-US" xlink:label="lab_us-gaap_PreferredStockSharesIssued" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Shares Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockSharesIssued" xlink:to="lab_us-gaap_PreferredStockSharesIssued" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentType_d7dbe75e-c667-4123-8780-5e0e86d1f3c9_terseLabel_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:label id="lab_dei_DocumentType_label_en-US" xlink:label="lab_dei_DocumentType" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Type</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentType" xlink:to="lab_dei_DocumentType" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntitySmallBusiness_b267cf2d-235e-4d4d-a583-ff26091ea234_terseLabel_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:label id="lab_dei_EntitySmallBusiness_label_en-US" xlink:label="lab_dei_EntitySmallBusiness" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Small Business</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntitySmallBusiness" xlink:to="lab_dei_EntitySmallBusiness" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_1d52765b-a5da-4f5b-852f-74d0e4c94d9d_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Components of Net Cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Net Periodic Benefit Cost (Credit) [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract" xlink:to="lab_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_8597f155-fe0e-4164-b8c6-9eda99cf240c_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskBenchmarkDomain_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="lab_us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet_815b8322-7167-409b-85cd-74d0659d2360_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit facility, net</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Increase (Decrease), Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet" xlink:to="lab_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_LossLiabilityMember_182845af-017b-4ccb-b368-4eafc5277a8a_terseLabel_en-US" xlink:label="lab_virc_LossLiabilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss Liability [Member]</link:label>
    <link:label id="lab_virc_LossLiabilityMember_label_en-US" xlink:label="lab_virc_LossLiabilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss Liability [Member]</link:label>
    <link:label id="lab_virc_LossLiabilityMember_documentation_en-US" xlink:label="lab_virc_LossLiabilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss Liability [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LossLiabilityMember" xlink:href="virc-20230430.xsd#virc_LossLiabilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_LossLiabilityMember" xlink:to="lab_virc_LossLiabilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_EquipmentLoanMember_5cba7f36-6fc8-4b11-9380-a507bbe55c32_terseLabel_en-US" xlink:label="lab_virc_EquipmentLoanMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equipment Loan [Member]</link:label>
    <link:label id="lab_virc_EquipmentLoanMember_label_en-US" xlink:label="lab_virc_EquipmentLoanMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equipment Loan [Member]</link:label>
    <link:label id="lab_virc_EquipmentLoanMember_documentation_en-US" xlink:label="lab_virc_EquipmentLoanMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equipment Loan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_EquipmentLoanMember" xlink:href="virc-20230430.xsd#virc_EquipmentLoanMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_EquipmentLoanMember" xlink:to="lab_virc_EquipmentLoanMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_a713f925-a709-455b-9ad5-b4ee5d7670c3_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityTable_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityTable" xlink:to="lab_us-gaap_LineOfCreditFacilityTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_9df31e72-aa0c-48ba-9bbd-dbdcb9249086_verboseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureTextBlock" xlink:to="lab_us-gaap_DebtDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_IncreaseInInventories_55ad88a0-54e1-4150-b0e6-5b5fbd36aeba_terseLabel_en-US" xlink:label="lab_virc_IncreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase In Inventories</link:label>
    <link:label id="lab_virc_IncreaseInInventories_label_en-US" xlink:label="lab_virc_IncreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase In Inventories</link:label>
    <link:label id="lab_virc_IncreaseInInventories_documentation_en-US" xlink:label="lab_virc_IncreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase In Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseInInventories" xlink:href="virc-20230430.xsd#virc_IncreaseInInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_IncreaseInInventories" xlink:to="lab_virc_IncreaseInInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductsAndServicesDomain_cb9834bd-fdca-4241-b779-e1dfeec1f1e6_terseLabel_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:label id="lab_srt_ProductsAndServicesDomain_label_en-US" xlink:label="lab_srt_ProductsAndServicesDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductsAndServicesDomain" xlink:to="lab_srt_ProductsAndServicesDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_f2bfbe21-8485-4760-b389-c04214c9652c_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized compensation expense</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityShellCompany_2fadbd8f-e611-434b-8338-4a56fede4114_terseLabel_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:label id="lab_dei_EntityShellCompany_label_en-US" xlink:label="lab_dei_EntityShellCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Shell Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityShellCompany" xlink:to="lab_dei_EntityShellCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_80407dd0-25f5-4b77-b34c-bc3c697c9779_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2025</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubleaseIncome_1c9625c8-af42-4699-81c0-5486fac5b035_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_SubleaseIncome" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sublease income</link:label>
    <link:label id="lab_us-gaap_SubleaseIncome_label_en-US" xlink:label="lab_us-gaap_SubleaseIncome" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sublease Income</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubleaseIncome" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubleaseIncome"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubleaseIncome" xlink:to="lab_us-gaap_SubleaseIncome" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_b6c2588f-5eaa-4fa4-bd2f-6de5cef01bad_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade accounts receivable</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsReceivable_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Receivable</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_Security12bTitle_38085d6f-77b6-46cb-a56f-2995bdfb6780_terseLabel_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:label id="lab_dei_Security12bTitle_label_en-US" xlink:label="lab_dei_Security12bTitle" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_Security12bTitle" xlink:to="lab_dei_Security12bTitle" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_959520bb-3027-4878-a114-a27f270a46ce_verboseLabel_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basis of Presentation</link:label>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanSponsorLocationDomain_943a78e8-8b58-477d-85b9-a4f56ead9ed7_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanSponsorLocationDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Sponsor Location [Domain]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanSponsorLocationDomain_label_en-US" xlink:label="lab_us-gaap_RetirementPlanSponsorLocationDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Sponsor Location [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationDomain" xlink:to="lab_us-gaap_RetirementPlanSponsorLocationDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventMember_5271fb28-7853-4c85-9ff9-808cc63b99d2_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventMember_label_en-US" xlink:label="lab_us-gaap_SubsequentEventMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Event [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventMember" xlink:to="lab_us-gaap_SubsequentEventMember" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_SeasonalityTextualAbstract_3e19dbed-c219-4809-9191-b6d280e2b6b6_verboseLabel_en-US" xlink:label="lab_virc_SeasonalityTextualAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality (Textual) [Abstract]</link:label>
    <link:label id="lab_virc_SeasonalityTextualAbstract_label_en-US" xlink:label="lab_virc_SeasonalityTextualAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality (Textual) [Abstract]</link:label>
    <link:label id="lab_virc_SeasonalityTextualAbstract_documentation_en-US" xlink:label="lab_virc_SeasonalityTextualAbstract" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SeasonalityTextualAbstract" xlink:href="virc-20230430.xsd#virc_SeasonalityTextualAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_SeasonalityTextualAbstract" xlink:to="lab_virc_SeasonalityTextualAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear_7934b6dd-7a8d-4402-92ec-d5ef084bf968_terseLabel_en-US" xlink:label="lab_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit facility, period for reduced borrowings during fourth quarter of each fiscal year (consecutive days)</link:label>
    <link:label id="lab_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear_label_en-US" xlink:label="lab_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Period for Reduced Borrowings during Fourth Quarter of Each Fiscal Year</link:label>
    <link:label id="lab_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear_documentation_en-US" xlink:label="lab_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Period for Reduced Borrowings during Fourth Quarter of Each Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" xlink:href="virc-20230430.xsd#virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" xlink:to="lab_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentPeriodEndDate_9494afb1-07c2-4c39-8258-6f7d1285834d_terseLabel_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:label id="lab_dei_DocumentPeriodEndDate_label_en-US" xlink:label="lab_dei_DocumentPeriodEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Period End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentPeriodEndDate" xlink:to="lab_dei_DocumentPeriodEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_c985d1fb-4236-4d62-843e-4aa0a5323a0c_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentLineItems_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentLineItems" xlink:to="lab_us-gaap_DebtInstrumentLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract_ecb12c72-827f-481e-987f-021631a7b7ca_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock:</link:label>
    <link:label id="lab_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Number of Shares, Par Value and Other Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:to="lab_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_IncrementalCommonSharesExcludedToDilutiveEffect_27f82b21-4a7c-41d9-bf7e-8f38c35f2007_terseLabel_en-US" xlink:label="lab_virc_IncrementalCommonSharesExcludedToDilutiveEffect" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental common shares excluded to dilutive effect</link:label>
    <link:label id="lab_virc_IncrementalCommonSharesExcludedToDilutiveEffect_label_en-US" xlink:label="lab_virc_IncrementalCommonSharesExcludedToDilutiveEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Common Shares Excluded to Dilutive Effect</link:label>
    <link:label id="lab_virc_IncrementalCommonSharesExcludedToDilutiveEffect_documentation_en-US" xlink:label="lab_virc_IncrementalCommonSharesExcludedToDilutiveEffect" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Common Shares Excluded to Dilutive Effect</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncrementalCommonSharesExcludedToDilutiveEffect" xlink:href="virc-20230430.xsd#virc_IncrementalCommonSharesExcludedToDilutiveEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_IncrementalCommonSharesExcludedToDilutiveEffect" xlink:to="lab_virc_IncrementalCommonSharesExcludedToDilutiveEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_AlternateBaseRateLoansMember_79242947-9838-4f06-947f-c6fa8b12e61b_terseLabel_en-US" xlink:label="lab_virc_AlternateBaseRateLoansMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Alternate Base Rate Loans [Member]</link:label>
    <link:label id="lab_virc_AlternateBaseRateLoansMember_label_en-US" xlink:label="lab_virc_AlternateBaseRateLoansMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Alternate Base Rate Loans [Member]</link:label>
    <link:label id="lab_virc_AlternateBaseRateLoansMember_documentation_en-US" xlink:label="lab_virc_AlternateBaseRateLoansMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Alternate base rate loans.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AlternateBaseRateLoansMember" xlink:href="virc-20230430.xsd#virc_AlternateBaseRateLoansMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_AlternateBaseRateLoansMember" xlink:to="lab_virc_AlternateBaseRateLoansMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_da4cc272-cf59-4f60-b997-738413efed9a_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiability_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiability" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiability" xlink:to="lab_us-gaap_OperatingLeaseLiability" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Assets_e7d26d15-1893-4cf2-898d-90cf46ee4077_totalLabel_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total assets</link:label>
    <link:label id="lab_us-gaap_Assets_label_en-US" xlink:label="lab_us-gaap_Assets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Assets" xlink:to="lab_us-gaap_Assets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_65b36c5a-8239-49fe-8f5f-aabf2e6fe015_terseLabel_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_DebtDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_DebtDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtDisclosureAbstract" xlink:to="lab_us-gaap_DebtDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Land_387965ec-ff69-4c1f-b2fe-e307971d790e_verboseLabel_en-US" xlink:label="lab_us-gaap_Land" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land</link:label>
    <link:label id="lab_us-gaap_Land_label_en-US" xlink:label="lab_us-gaap_Land" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Land" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Land"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Land" xlink:to="lab_us-gaap_Land" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_d2d33e68-4b9f-4db0-8305-85ceed2cf49b_terseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expenses [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpensesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_745973bc-a984-4d26-80cb-4524dfbc496e_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net loss per common share:</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_dbd85eaf-91cb-401a-a714-3ea6931ed02a_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareAbstract_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareAbstract" xlink:to="lab_us-gaap_EarningsPerShareAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_ef93a8bf-a70a-4059-8f42-190c5c32a1a2_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:label id="lab_us-gaap_IncomeStatementLocationAxis_label_en-US" xlink:label="lab_us-gaap_IncomeStatementLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Statement Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeStatementLocationAxis" xlink:to="lab_us-gaap_IncomeStatementLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_3bd0933a-5cb9-4812-a38b-94c35f6cf693_terseLabel_en-US" xlink:label="lab_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum fixed charge coverage ratio</link:label>
    <link:label id="lab_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_label_en-US" xlink:label="lab_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Covenant, Minimum Fixed Charge Coverage Ratio</link:label>
    <link:label id="lab_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_documentation_en-US" xlink:label="lab_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt instrument, covenant, maintained fixed charge coverage ratio</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" xlink:to="lab_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax_93644aa2-63b1-4c0b-94af-951ef92e36a1_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension adjustment, tax expense</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer_e2b6aed3-d2b8-4982-a9f3-41f2434f1f12_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contributions by employer</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Plan Assets, Contributions by Employer</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:to="lab_us-gaap_DefinedBenefitPlanContributionsByEmployer" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_6531b27e-90b7-464e-b81d-533f35f88b5e_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring and Related Costs [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Restructuring and Related Costs [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:to="lab_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongTermDebtCurrent_de6a93b5-0a3d-4e83-b9b3-d66539b5c8ee_verboseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current portion of long-term debt</link:label>
    <link:label id="lab_us-gaap_LongTermDebtCurrent_2d2fe710-9938-45bf-bfe8-79b9593d7e7d_terseLabel_en-US" xlink:label="lab_us-gaap_LongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Less current portion</link:label>
    <link:label id="lab_us-gaap_LongTermDebtCurrent_label_en-US" xlink:label="lab_us-gaap_LongTermDebtCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Current Maturities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongTermDebtCurrent" xlink:to="lab_us-gaap_LongTermDebtCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_350cb55b-a82f-4a88-92e9-1347e4c37a45_totalLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net cash provided by financing activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_ExtremeSeasonalityGoods_65ac7068-8ee9-4cc9-8cbf-ad464c21c30b_terseLabel_en-US" xlink:label="lab_virc_ExtremeSeasonalityGoods" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">The market for educational furniture is marked by extreme seasonality</link:label>
    <link:label id="lab_virc_ExtremeSeasonalityGoods_label_en-US" xlink:label="lab_virc_ExtremeSeasonalityGoods" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Extreme Seasonality Goods</link:label>
    <link:label id="lab_virc_ExtremeSeasonalityGoods_documentation_en-US" xlink:label="lab_virc_ExtremeSeasonalityGoods" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Extreme seasonality goods.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ExtremeSeasonalityGoods" xlink:href="virc-20230430.xsd#virc_ExtremeSeasonalityGoods"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_ExtremeSeasonalityGoods" xlink:to="lab_virc_ExtremeSeasonalityGoods" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_fe5b2824-4429-4822-b00f-e53c8cfed16d_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average shares of common stock outstanding:</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LandImprovements_543d091e-eb7a-4edf-827e-fcd45ef8cdc5_verboseLabel_en-US" xlink:label="lab_us-gaap_LandImprovements" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land improvements</link:label>
    <link:label id="lab_us-gaap_LandImprovements_label_en-US" xlink:label="lab_us-gaap_LandImprovements" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Land Improvements</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandImprovements" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandImprovements"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LandImprovements" xlink:to="lab_us-gaap_LandImprovements" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryNet_98494a13-c16d-4083-a39a-70adae13f55f_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_19f58e55-605e-4c0a-9943-bae04cf26063_totalLabel_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total inventories</link:label>
    <link:label id="lab_us-gaap_InventoryNet_label_en-US" xlink:label="lab_us-gaap_InventoryNet" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Net</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryNet" xlink:to="lab_us-gaap_InventoryNet" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_6f9752e3-0079-42ff-91bc-0a97f2ebabe2_verboseLabel_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued compensation and employee benefits</link:label>
    <link:label id="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Employee-related Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="lab_us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_VariableLeaseCost_d1b289c0-8d9b-4efb-8a39-06ca29a3cdf1_terseLabel_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable lease cost</link:label>
    <link:label id="lab_us-gaap_VariableLeaseCost_label_en-US" xlink:label="lab_us-gaap_VariableLeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Variable Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_VariableLeaseCost" xlink:to="lab_us-gaap_VariableLeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_e9e2a9e2-8852-41d4-a749-f05c3c3b33bd_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable</link:label>
    <link:label id="lab_us-gaap_AccountsPayableCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsPayableCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Payable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsPayableCurrent" xlink:to="lab_us-gaap_AccountsPayableCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_22054c39-b771-4ece-b799-f25be43d2f7e_totalLabel_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss before income taxes</link:label>
    <link:label id="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_label_en-US" xlink:label="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_85379cf4-81da-44da-99c3-279e235f84bc_verboseLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' equity:</link:label>
    <link:label id="lab_us-gaap_StockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquityAbstract" xlink:to="lab_us-gaap_StockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_ab853092-b342-40f3-8678-5f4935a1ba72_terseLabel_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_label_en-US" xlink:label="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid Expense and Other Assets, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="lab_us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits_0cafae01-8777-4f31-ae66-2bc8b49587e8_verboseLabel_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred income taxes</link:label>
    <link:label id="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits_label_en-US" xlink:label="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Deferred Income Taxes and Tax Credits</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:to="lab_us-gaap_DeferredIncomeTaxesAndTaxCredits" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesNoncurrent_0801a72c-1676-43b2-80f6-38747a033fac_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other long-term liabilities</link:label>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesNoncurrent_label_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Accrued Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesNoncurrent" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_2177bf85-8f61-45ee-8e12-d620e45249a9_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income (loss) per Share</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareTextBlock_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareTextBlock" xlink:to="lab_us-gaap_EarningsPerShareTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherReceivables_7762eca3-98bd-4fed-81e0-fe3020e2643d_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherReceivables" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other receivables</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOtherReceivables_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOtherReceivables" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Other Receivables</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherReceivables" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherReceivables"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOtherReceivables" xlink:to="lab_us-gaap_IncreaseDecreaseInOtherReceivables" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanInterestCost_e2f7af58-1873-4c6a-b67e-1fa43c99d512_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanInterestCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanInterestCost_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanInterestCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Interest Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanInterestCost" xlink:to="lab_us-gaap_DefinedBenefitPlanInterestCost" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFilerCategory_204b6e04-f121-48af-9b21-89e3745969b9_terseLabel_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:label id="lab_dei_EntityFilerCategory_label_en-US" xlink:label="lab_dei_EntityFilerCategory" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Filer Category</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFilerCategory" xlink:to="lab_dei_EntityFilerCategory" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_135eaebb-8fc2-4e17-b7cf-b061ef01647f_verboseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_bfb317a0-cdd3-45b0-8e4a-3a8227dc0abc_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted average shares outstanding - basic (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_b673195e-40eb-4777-900c-ae75bc6acf9a_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_IncrementalCreditLineIncreaseDecreasePercentage_ff811ef8-7d69-423a-90a1-014486a43c6c_terseLabel_en-US" xlink:label="lab_virc_IncrementalCreditLineIncreaseDecreasePercentage" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental credit line increase (decrease)</link:label>
    <link:label id="lab_virc_IncrementalCreditLineIncreaseDecreasePercentage_label_en-US" xlink:label="lab_virc_IncrementalCreditLineIncreaseDecreasePercentage" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Credit Line Increase (Decrease), Percentage</link:label>
    <link:label id="lab_virc_IncrementalCreditLineIncreaseDecreasePercentage_documentation_en-US" xlink:label="lab_virc_IncrementalCreditLineIncreaseDecreasePercentage" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Incremental Credit Line Increase (Decrease), Percentage</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncrementalCreditLineIncreaseDecreasePercentage" xlink:href="virc-20230430.xsd#virc_IncrementalCreditLineIncreaseDecreasePercentage"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_IncrementalCreditLineIncreaseDecreasePercentage" xlink:to="lab_virc_IncrementalCreditLineIncreaseDecreasePercentage" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_BuildingsAndImprovementsGross_5cad5d91-4ac3-4d40-81e9-b6c84fb9dca6_verboseLabel_en-US" xlink:label="lab_us-gaap_BuildingsAndImprovementsGross" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Buildings and building improvements</link:label>
    <link:label id="lab_us-gaap_BuildingsAndImprovementsGross_label_en-US" xlink:label="lab_us-gaap_BuildingsAndImprovementsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Buildings and Improvements, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_BuildingsAndImprovementsGross" xlink:to="lab_us-gaap_BuildingsAndImprovementsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_country_US_47c4a318-82a1-49dc-8d04-6ade13d5b9d4_terseLabel_en-US" xlink:label="lab_country_US" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">United States [Member]</link:label>
    <link:label id="lab_country_US_label_en-US" xlink:label="lab_country_US" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">UNITED STATES</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_country_US" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_country_US" xlink:to="lab_country_US" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_6fa3ff43-fde4-453b-a22a-7d5de6ba208a_terseLabel_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrecognized compensation expense, weighted average period to be recognized</link:label>
    <link:label id="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_label_en-US" xlink:label="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxes_46964540-c668-40a5-997e-48962171cc98_verboseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income taxes</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInIncomeTaxes_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Income Taxes</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxes"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:to="lab_us-gaap_IncreaseDecreaseInIncomeTaxes" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxesReceivable_9e1018d8-d2dd-469f-97ff-3a132bf75fd4_verboseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxesReceivable" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax receivable</link:label>
    <link:label id="lab_us-gaap_IncomeTaxesReceivable_label_en-US" xlink:label="lab_us-gaap_IncomeTaxesReceivable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes Receivable, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesReceivable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesReceivable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxesReceivable" xlink:to="lab_us-gaap_IncomeTaxesReceivable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_GrossProfit_848c0cae-20a2-43a4-a670-94bbfba41249_totalLabel_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross profit</link:label>
    <link:label id="lab_us-gaap_GrossProfit_label_en-US" xlink:label="lab_us-gaap_GrossProfit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Gross Profit</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_GrossProfit" xlink:to="lab_us-gaap_GrossProfit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_66d3af43-bb71-4053-90b1-1d66fa86e2da_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and contingencies (Notes 6, 7 and 13)</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingencies_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingencies" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingencies" xlink:to="lab_us-gaap_CommitmentsAndContingencies" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_SecurityExchangeName_fde3685a-c6c3-4cd0-a25f-688b2b3d4d68_terseLabel_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:label id="lab_dei_SecurityExchangeName_label_en-US" xlink:label="lab_dei_SecurityExchangeName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Security Exchange Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_SecurityExchangeName" xlink:to="lab_dei_SecurityExchangeName" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityRegistrantName_b67f3c69-490e-4c56-9181-e9eaa164312c_terseLabel_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:label id="lab_dei_EntityRegistrantName_label_en-US" xlink:label="lab_dei_EntityRegistrantName" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityRegistrantName" xlink:to="lab_dei_EntityRegistrantName" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_SeasonalityTextBlock_5f095cb6-0a7a-4e54-90b6-041454a1ef8c_verboseLabel_en-US" xlink:label="lab_virc_SeasonalityTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality and Management Use of Estimates</link:label>
    <link:label id="lab_virc_SeasonalityTextBlock_label_en-US" xlink:label="lab_virc_SeasonalityTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality [Text Block]</link:label>
    <link:label id="lab_virc_SeasonalityTextBlock_documentation_en-US" xlink:label="lab_virc_SeasonalityTextBlock" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Seasonality.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SeasonalityTextBlock" xlink:href="virc-20230430.xsd#virc_SeasonalityTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_SeasonalityTextBlock" xlink:to="lab_virc_SeasonalityTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_faa583cd-f56d-4ca3-8ba2-c89e37f317f3_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsTextBlock_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsTextBlock" xlink:to="lab_us-gaap_SubsequentEventsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PreferredStockValue_4305e221-3b5a-43e4-b4d9-e37314643a26_verboseLabel_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Authorized 3,000,000 shares, $0.01 par value; none issued or outstanding</link:label>
    <link:label id="lab_us-gaap_PreferredStockValue_label_en-US" xlink:label="lab_us-gaap_PreferredStockValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Preferred Stock, Value, Issued</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PreferredStockValue" xlink:to="lab_us-gaap_PreferredStockValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MortgagesMember_6bf1b3f4-f344-4ef1-9579-76e4fb175c2d_terseLabel_en-US" xlink:label="lab_us-gaap_MortgagesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Original Mortgage Note</link:label>
    <link:label id="lab_us-gaap_MortgagesMember_label_en-US" xlink:label="lab_us-gaap_MortgagesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Mortgages [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MortgagesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MortgagesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MortgagesMember" xlink:to="lab_us-gaap_MortgagesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_26cd4b8b-f2ae-4434-949f-44a789020684_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plans and Other Postretirement Benefit Plans Disclosures [Table]</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plans and Other Postretirement Benefit Plans Disclosures [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:to="lab_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_a6ee5cf1-b34f-4863-9433-1912ee5bb3a4_verboseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net sales</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer, Excluding Assessed Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressCityOrTown_1ee46137-82d5-4098-a48c-9c6754438f27_terseLabel_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:label id="lab_dei_EntityAddressCityOrTown_label_en-US" xlink:label="lab_dei_EntityAddressCityOrTown" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressCityOrTown" xlink:to="lab_dei_EntityAddressCityOrTown" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanServiceCost_dbf56d4e-1731-4c94-adf1-45e1e9a1ef53_terseLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanServiceCost" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Service cost</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanServiceCost_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanServiceCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Service Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanServiceCost" xlink:to="lab_us-gaap_DefinedBenefitPlanServiceCost" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_DividendPayableMaximumAmountInFiscalYear_67c57717-4848-4649-b629-c5b68937ddba_terseLabel_en-US" xlink:label="lab_virc_DividendPayableMaximumAmountInFiscalYear" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Maximum dividend amount in fiscal year</link:label>
    <link:label id="lab_virc_DividendPayableMaximumAmountInFiscalYear_label_en-US" xlink:label="lab_virc_DividendPayableMaximumAmountInFiscalYear" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividend Payable, Maximum Amount In Fiscal Year</link:label>
    <link:label id="lab_virc_DividendPayableMaximumAmountInFiscalYear_documentation_en-US" xlink:label="lab_virc_DividendPayableMaximumAmountInFiscalYear" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Dividend Payable, Maximum Amount In Fiscal Year</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DividendPayableMaximumAmountInFiscalYear" xlink:href="virc-20230430.xsd#virc_DividendPayableMaximumAmountInFiscalYear"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_DividendPayableMaximumAmountInFiscalYear" xlink:to="lab_virc_DividendPayableMaximumAmountInFiscalYear" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeasesAbstract_983523ac-709c-49e1-8ef0-a2d2df26390b_terseLabel_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:label id="lab_us-gaap_LeasesAbstract_label_en-US" xlink:label="lab_us-gaap_LeasesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leases [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeasesAbstract" xlink:to="lab_us-gaap_LeasesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesNoncurrentAbstract_d1f2c452-97ef-48b3-bfbd-98c300e04a6e_verboseLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesNoncurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-current liabilities:</link:label>
    <link:label id="lab_us-gaap_LiabilitiesNoncurrentAbstract_label_en-US" xlink:label="lab_us-gaap_LiabilitiesNoncurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Noncurrent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract" xlink:to="lab_us-gaap_LiabilitiesNoncurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CoverAbstract_label_en-US" xlink:label="lab_dei_CoverAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cover [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CoverAbstract" xlink:to="lab_dei_CoverAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTable_770c5681-9745-4280-bb15-7cccabbff172_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-term Debt Instruments [Table]</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTable_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-Term Debt Instruments [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTable" xlink:to="lab_us-gaap_DebtInstrumentTable" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_AutomobileLiabilityLossMember_7b4ff400-2f89-4a1a-a498-976680472fdc_terseLabel_en-US" xlink:label="lab_virc_AutomobileLiabilityLossMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Automobile Liability Loss [Member]</link:label>
    <link:label id="lab_virc_AutomobileLiabilityLossMember_label_en-US" xlink:label="lab_virc_AutomobileLiabilityLossMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Automobile Liability Loss [Member]</link:label>
    <link:label id="lab_virc_AutomobileLiabilityLossMember_documentation_en-US" xlink:label="lab_virc_AutomobileLiabilityLossMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Automobile Liability Loss [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AutomobileLiabilityLossMember" xlink:href="virc-20230430.xsd#virc_AutomobileLiabilityLossMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_AutomobileLiabilityLossMember" xlink:to="lab_virc_AutomobileLiabilityLossMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_948a86b6-3c4a-4b14-8800-77b3e78f0640_terseLabel_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock-Based Compensation</link:label>
    <link:label id="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_label_en-US" xlink:label="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_MinimumMember_d4ec44a0-2640-41fb-97f3-f46822202e5a_terseLabel_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum</link:label>
    <link:label id="lab_srt_MinimumMember_label_en-US" xlink:label="lab_srt_MinimumMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_MinimumMember" xlink:to="lab_srt_MinimumMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_59062d93-27d3-4d8a-b871-a7abdd1b34e9_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Work in process</link:label>
    <link:label id="lab_us-gaap_InventoryWorkInProcessNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Work in Process, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="lab_us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_5030696d-6a73-49cf-9055-ab7f223f6156_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue Recognition</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerTextBlock_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_f7d25548-0d34-47b7-9260-60dbb7d61cb0_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfFinancialPositionAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract" xlink:to="lab_us-gaap_StatementOfFinancialPositionAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_9c88466b-eab4-4686-80a7-00f229622f7b_terseLabel_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:label id="lab_dei_EntityEmergingGrowthCompany_label_en-US" xlink:label="lab_dei_EntityEmergingGrowthCompany" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityEmergingGrowthCompany" xlink:to="lab_dei_EntityEmergingGrowthCompany" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax_30329597-075a-4652-bb8a-26096033e063_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of net actuarial loss for pension plans</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Defined Benefit Plan, Gain (Loss), Reclassification Adjustment from AOCI, after Tax</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_4b6b026d-113f-44c9-b7ac-8f2bcc6833ad_verboseLabel_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, par value (usd per share)</link:label>
    <link:label id="lab_us-gaap_CommonStockParOrStatedValuePerShare_label_en-US" xlink:label="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Par or Stated Value Per Share</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockParOrStatedValuePerShare" xlink:to="lab_us-gaap_CommonStockParOrStatedValuePerShare" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_392b336b-e000-414b-afb3-7098c3b785aa_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Raw materials</link:label>
    <link:label id="lab_us-gaap_InventoryRawMaterialsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Raw Materials, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="lab_us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_f25f53be-10bb-4660-a1d5-541f0445f7bf_terseLabel_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Commitments and Contingencies Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:to="lab_us-gaap_CommitmentsAndContingenciesDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PensionPlansDefinedBenefitMember_26599211-b898-40d0-957e-54600069fcf1_terseLabel_en-US" xlink:label="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plan [Member]</link:label>
    <link:label id="lab_us-gaap_PensionPlansDefinedBenefitMember_label_en-US" xlink:label="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension Plan [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PensionPlansDefinedBenefitMember" xlink:to="lab_us-gaap_PensionPlansDefinedBenefitMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_7cc18d44-bc7e-4b01-90c0-548b1d4b1526_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total liabilities and stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_LiabilitiesAndStockholdersEquity_label_en-US" xlink:label="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities and Equity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="lab_us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_TradingSymbol_023372ea-c5a1-4c40-a3a1-5b543181c1e8_terseLabel_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:label id="lab_dei_TradingSymbol_label_en-US" xlink:label="lab_dei_TradingSymbol" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Symbol</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_TradingSymbol" xlink:to="lab_dei_TradingSymbol" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityFileNumber_20d31a7e-b8af-4300-a707-a194aaf2c9fc_terseLabel_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:label id="lab_dei_EntityFileNumber_label_en-US" xlink:label="lab_dei_EntityFileNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity File Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityFileNumber" xlink:to="lab_dei_EntityFileNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent_e1c9ccc6-f9ca-4211-939f-de3d55455905_verboseLabel_en-US" xlink:label="lab_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued pension expenses</link:label>
    <link:label id="lab_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent_label_en-US" xlink:label="lab_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension and Other Postretirement Defined Benefit Plans, Including Life Insurance, Liabilities, Noncurrent</link:label>
    <link:label id="lab_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent_documentation_en-US" xlink:label="lab_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Pension and Other Postretirement Defined Benefit Plans, Including Life Insurance, Liabilities, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" xlink:href="virc-20230430.xsd#virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" xlink:to="lab_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentTerm_64313a42-f7e5-472e-9423-4255130452fb_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Term</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentTerm_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentTerm" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Term</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentTerm" xlink:to="lab_us-gaap_DebtInstrumentTerm" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent_8994b3bb-796c-4419-84a8-b759b3fa4fb9_terseLabel_en-US" xlink:label="lab_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Minimum annual contributions per employee, percent</link:label>
    <link:label id="lab_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent_label_en-US" xlink:label="lab_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Minimum Annual Contributions Per Employee, Percent</link:label>
    <link:label id="lab_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent_documentation_en-US" xlink:label="lab_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Minimum Annual Contributions Per Employee, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" xlink:href="virc-20230430.xsd#virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" xlink:to="lab_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCosts_d3f2bb5d-94d0-4f23-b427-f06c74a88b3d_terseLabel_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of debt issuance costs</link:label>
    <link:label id="lab_us-gaap_AmortizationOfFinancingCosts_label_en-US" xlink:label="lab_us-gaap_AmortizationOfFinancingCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Amortization of Debt Issuance Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AmortizationOfFinancingCosts" xlink:to="lab_us-gaap_AmortizationOfFinancingCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_bc96e315-8876-4894-8968-890af9ec7489_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Axis]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeAxis_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeAxis" xlink:to="lab_us-gaap_LongtermDebtTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_Cash_3903544e-7180-4697-96c6-10e59ff785f8_verboseLabel_en-US" xlink:label="lab_us-gaap_Cash" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash</link:label>
    <link:label id="lab_us-gaap_Cash_label_en-US" xlink:label="lab_us-gaap_Cash" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Cash" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Cash"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_Cash" xlink:to="lab_us-gaap_Cash" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SalesMember_098f780e-8750-47a0-82a7-ed17698a7979_verboseLabel_en-US" xlink:label="lab_us-gaap_SalesMember" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales [Member]</link:label>
    <link:label id="lab_us-gaap_SalesMember_label_en-US" xlink:label="lab_us-gaap_SalesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Sales [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SalesMember" xlink:to="lab_us-gaap_SalesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseholdImprovementsGross_47a9dda4-abf8-4b2e-a244-541b1b9c696c_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsGross" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leasehold improvements</link:label>
    <link:label id="lab_us-gaap_LeaseholdImprovementsGross_label_en-US" xlink:label="lab_us-gaap_LeaseholdImprovementsGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Leasehold Improvements, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseholdImprovementsGross" xlink:to="lab_us-gaap_LeaseholdImprovementsGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_59b3bbcb-df9c-4669-811b-2f750e56d5d6_terseLabel_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:label id="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_label_en-US" xlink:label="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:to="lab_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_ProductLiabilityMember_18bd6b22-84b1-4f88-b5b8-26d0fe7197e9_terseLabel_en-US" xlink:label="lab_virc_ProductLiabilityMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Liability [Member]</link:label>
    <link:label id="lab_virc_ProductLiabilityMember_label_en-US" xlink:label="lab_virc_ProductLiabilityMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Liability [Member]</link:label>
    <link:label id="lab_virc_ProductLiabilityMember_documentation_en-US" xlink:label="lab_virc_ProductLiabilityMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Liability</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ProductLiabilityMember" xlink:href="virc-20230430.xsd#virc_ProductLiabilityMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_ProductLiabilityMember" xlink:to="lab_virc_ProductLiabilityMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_c32c0fd0-6206-4e6e-b9e8-fbfedc230565_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Granted in the period (shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_3bff7229-0576-4b36-81ec-14e1692076b7_terseLabel_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:label id="lab_us-gaap_RestrictedStockUnitsRSUMember_label_en-US" xlink:label="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restricted Stock Units (RSUs) [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestrictedStockUnitsRSUMember" xlink:to="lab_us-gaap_RestrictedStockUnitsRSUMember" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_DefinedContributionPlanNumberOfCommonSharesHeld_d1466e49-d800-45a6-b50e-71f73d09e3d5_terseLabel_en-US" xlink:label="lab_virc_DefinedContributionPlanNumberOfCommonSharesHeld" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Number of common shares held</link:label>
    <link:label id="lab_virc_DefinedContributionPlanNumberOfCommonSharesHeld_label_en-US" xlink:label="lab_virc_DefinedContributionPlanNumberOfCommonSharesHeld" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Number of Common Shares Held</link:label>
    <link:label id="lab_virc_DefinedContributionPlanNumberOfCommonSharesHeld_documentation_en-US" xlink:label="lab_virc_DefinedContributionPlanNumberOfCommonSharesHeld" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Contribution Plan, Number of Common Shares Held</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedContributionPlanNumberOfCommonSharesHeld" xlink:href="virc-20230430.xsd#virc_DefinedContributionPlanNumberOfCommonSharesHeld"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_DefinedContributionPlanNumberOfCommonSharesHeld" xlink:to="lab_virc_DefinedContributionPlanNumberOfCommonSharesHeld" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_9b02e890-993b-4469-a0eb-8bafa7b92e46_terseLabel_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective tax rate</link:label>
    <link:label id="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations_label_en-US" xlink:label="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Effective Income Tax Rate Reconciliation, Percent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:to="lab_us-gaap_EffectiveIncomeTaxRateContinuingOperations" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_4e90a610-c974-46ca-a52f-237cded9af13_terseLabel_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:label id="lab_dei_CurrentFiscalYearEndDate_label_en-US" xlink:label="lab_dei_CurrentFiscalYearEndDate" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CurrentFiscalYearEndDate" xlink:to="lab_dei_CurrentFiscalYearEndDate" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_68eeea30-80c9-49cf-8731-701adde08ea8_terseLabel_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:label id="lab_us-gaap_ConcentrationRiskByBenchmarkAxis_label_en-US" xlink:label="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="lab_us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_c83647b5-6790-4735-ab9a-9769d40a27bd_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Difference between undiscounted cash flows and discounted cash flows</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_966abc53-c406-4455-b495-c86c3a8cc67f_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Diluted (usd per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_0c1870ad-2d3c-4f32-bdfd-e83f7ebcdd00_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income (loss) per share - diluted (usd per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareDiluted_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareDiluted" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Diluted</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareDiluted" xlink:to="lab_us-gaap_EarningsPerShareDiluted" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_OtherDebtMember_7fb27083-c353-4a6c-abc7-88e67eb64aa4_terseLabel_en-US" xlink:label="lab_virc_OtherDebtMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Debt [Member]</link:label>
    <link:label id="lab_virc_OtherDebtMember_label_en-US" xlink:label="lab_virc_OtherDebtMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Debt [Member]</link:label>
    <link:label id="lab_virc_OtherDebtMember_documentation_en-US" xlink:label="lab_virc_OtherDebtMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Debt [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_OtherDebtMember" xlink:href="virc-20230430.xsd#virc_OtherDebtMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_OtherDebtMember" xlink:to="lab_virc_OtherDebtMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_82e9f2f9-5719-4f82-9356-56282652efd7_terseLabel_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other comprehensive income:</link:label>
    <link:label id="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_label_en-US" xlink:label="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:to="lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_LineOfCreditFacilityBorrowingBaseLimitation_a15b532f-4184-4abd-97d7-5d8c47cb71c5_terseLabel_en-US" xlink:label="lab_virc_LineOfCreditFacilityBorrowingBaseLimitation" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revolving credit facility borrowing base limitation</link:label>
    <link:label id="lab_virc_LineOfCreditFacilityBorrowingBaseLimitation_label_en-US" xlink:label="lab_virc_LineOfCreditFacilityBorrowingBaseLimitation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility Borrowing Base Limitation</link:label>
    <link:label id="lab_virc_LineOfCreditFacilityBorrowingBaseLimitation_documentation_en-US" xlink:label="lab_virc_LineOfCreditFacilityBorrowingBaseLimitation" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit facility borrowing base limitation.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineOfCreditFacilityBorrowingBaseLimitation" xlink:href="virc-20230430.xsd#virc_LineOfCreditFacilityBorrowingBaseLimitation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_LineOfCreditFacilityBorrowingBaseLimitation" xlink:to="lab_virc_LineOfCreditFacilityBorrowingBaseLimitation" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_1f53d241-1cea-4c54-bd6f-a594f105d95f_terseLabel_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock compensation expense</link:label>
    <link:label id="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_label_en-US" xlink:label="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">APIC, Share-Based Payment Arrangement, Increase for Cost Recognition</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:to="lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock_dd442d6f-1cda-487d-8136-7d17e6c428f6_terseLabel_en-US" xlink:label="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plans</link:label>
    <link:label id="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Postemployment Benefits Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:to="lab_us-gaap_PostemploymentBenefitsDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_0b1f9e8b-58eb-45ed-8a49-b0c323389bf5_terseLabel_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:label id="lab_us-gaap_SubsequentEventsAbstract_label_en-US" xlink:label="lab_us-gaap_SubsequentEventsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Subsequent Events [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SubsequentEventsAbstract" xlink:to="lab_us-gaap_SubsequentEventsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_3a2288b2-cccc-484c-8f56-9a2025f905e0_totalLabel_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total current liabilities</link:label>
    <link:label id="lab_us-gaap_LiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_LiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LiabilitiesCurrent" xlink:to="lab_us-gaap_LiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_0d8caf91-2691-43db-91ee-266ec9932de3_periodStartLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_329be06e-659e-49e0-a866-382929d481a8_periodEndLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_ProductWarrantyAccrual_label_en-US" xlink:label="lab_us-gaap_ProductWarrantyAccrual" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Standard and Extended Product Warranty Accrual</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantyAccrual" xlink:to="lab_us-gaap_ProductWarrantyAccrual" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DebtInstrumentFeeAmount_22452375-c660-4b8b-81de-7ed60122585b_terseLabel_en-US" xlink:label="lab_us-gaap_DebtInstrumentFeeAmount" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-refundable fee</link:label>
    <link:label id="lab_us-gaap_DebtInstrumentFeeAmount_label_en-US" xlink:label="lab_us-gaap_DebtInstrumentFeeAmount" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Debt Instrument, Fee Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFeeAmount" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFeeAmount"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DebtInstrumentFeeAmount" xlink:to="lab_us-gaap_DebtInstrumentFeeAmount" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_551ae383-cb03-4f2d-a770-9d35dc2bab09_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2026</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_7e5525ff-326d-4aa5-bd87-6583d5ff3069_terseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts payable and accrued liabilities</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Accounts Payable and Accrued Liabilities</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="lab_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_a049d38a-84d8-4952-9597-84faed16ee8a_terseLabel_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock-based compensation expense</link:label>
    <link:label id="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_label_en-US" xlink:label="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Expensed and Capitalized, Amount</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" xlink:to="lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_99775925-1133-4572-b3c6-50b176ee3cd5_terseLabel_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Taxes</link:label>
    <link:label id="lab_us-gaap_IncomeTaxDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income Tax Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncomeTaxDisclosureTextBlock" xlink:to="lab_us-gaap_IncomeTaxDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesNoncurrent_fcc17493-3dc0-4d17-8524-1062ea51bd68_verboseLabel_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Income tax payable</link:label>
    <link:label id="lab_us-gaap_AccruedIncomeTaxesNoncurrent_label_en-US" xlink:label="lab_us-gaap_AccruedIncomeTaxesNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued Income Taxes, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccruedIncomeTaxesNoncurrent" xlink:to="lab_us-gaap_AccruedIncomeTaxesNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_2f94c89b-1f5b-404b-b0a1-1197c45fb76a_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Finished goods</link:label>
    <link:label id="lab_us-gaap_InventoryFinishedGoodsNetOfReserves_label_en-US" xlink:label="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory, Finished Goods, Net of Reserves</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="lab_us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityDomain_6d2b234f-2a02-4203-89c7-594a51b2b861_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityDomain_label_en-US" xlink:label="lab_us-gaap_CreditFacilityDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityDomain" xlink:to="lab_us-gaap_CreditFacilityDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveLineItems_3502aec2-cf57-4ed7-9f97-2a80d1db8099_terseLabel_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Cost and Reserve [Line Items]</link:label>
    <link:label id="lab_us-gaap_RestructuringCostAndReserveLineItems_label_en-US" xlink:label="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Restructuring Cost and Reserve [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems" xlink:to="lab_us-gaap_RestructuringCostAndReserveLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_8f5cf100-fdb7-4f20-a7c4-281bbda59c38_negatedLabel_en-US" xlink:label="lab_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Recognized net actuarial loss</link:label>
    <link:label id="lab_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_label_en-US" xlink:label="lab_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Recognized Net Actuarial Gain (Loss)</link:label>
    <link:label id="lab_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_documentation_en-US" xlink:label="lab_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Recognized Net Actuarial Gain (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss" xlink:href="virc-20230430.xsd#virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss" xlink:to="lab_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_PNCMember_439d974f-b7ae-4384-a857-0b16b52cfd7a_terseLabel_en-US" xlink:label="lab_virc_PNCMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">PNC [Member]</link:label>
    <link:label id="lab_virc_PNCMember_label_en-US" xlink:label="lab_virc_PNCMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">P.N.C [Member]</link:label>
    <link:label id="lab_virc_PNCMember_documentation_en-US" xlink:label="lab_virc_PNCMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">P.N.C [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_PNCMember" xlink:href="virc-20230430.xsd#virc_PNCMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_PNCMember" xlink:to="lab_virc_PNCMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_ede985ef-f0ed-45d0-85cb-502808cec03a_verboseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Basic (usd per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_4db369d6-7386-4fe2-8b36-3895a15945ef_terseLabel_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net income (loss) per share - basic (usd per share)</link:label>
    <link:label id="lab_us-gaap_EarningsPerShareBasic_label_en-US" xlink:label="lab_us-gaap_EarningsPerShareBasic" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Earnings Per Share, Basic</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_EarningsPerShareBasic" xlink:to="lab_us-gaap_EarningsPerShareBasic" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_13643b88-0222-4b5d-a280-28efb4aea607_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">2027</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_ProductWarranty_e811b190-9312-4b80-b4bf-ca610912b117_terseLabel_en-US" xlink:label="lab_virc_ProductWarranty" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product warranty period</link:label>
    <link:label id="lab_virc_ProductWarranty_label_en-US" xlink:label="lab_virc_ProductWarranty" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranty</link:label>
    <link:label id="lab_virc_ProductWarranty_documentation_en-US" xlink:label="lab_virc_ProductWarranty" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product warranty.</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ProductWarranty" xlink:href="virc-20230430.xsd#virc_ProductWarranty"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_ProductWarranty" xlink:to="lab_virc_ProductWarranty" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_3757c2a5-2e7c-487a-a48b-d7cf7ddee43e_terseLabel_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Minimum Future Lease Payments</link:label>
    <link:label id="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Maturity [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:to="lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityAddressAddressLine1_435ece50-e6a3-43b3-906c-aea1d9d73aed_terseLabel_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:label id="lab_dei_EntityAddressAddressLine1_label_en-US" xlink:label="lab_dei_EntityAddressAddressLine1" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityAddressAddressLine1" xlink:to="lab_dei_EntityAddressAddressLine1" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_ShippingAndClassroomDeliveryCosts_7da99bb7-4ea3-4606-94db-e030bb51f85e_terseLabel_en-US" xlink:label="lab_virc_ShippingAndClassroomDeliveryCosts" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shipping and classroom delivery costs</link:label>
    <link:label id="lab_virc_ShippingAndClassroomDeliveryCosts_label_en-US" xlink:label="lab_virc_ShippingAndClassroomDeliveryCosts" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shipping And Classroom Delivery Costs</link:label>
    <link:label id="lab_virc_ShippingAndClassroomDeliveryCosts_documentation_en-US" xlink:label="lab_virc_ShippingAndClassroomDeliveryCosts" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Shipping And Classroom Delivery Costs</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ShippingAndClassroomDeliveryCosts" xlink:href="virc-20230430.xsd#virc_ShippingAndClassroomDeliveryCosts"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_ShippingAndClassroomDeliveryCosts" xlink:to="lab_virc_ShippingAndClassroomDeliveryCosts" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StockholdersEquity_90c17b70-c071-4cac-af85-1ea370a1f4e7_totalLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total stockholders&#8217; equity</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_b1d85446-f542-40c3-824d-bd2719c63cbb_periodStartLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_8734b8d8-42ce-4c70-8984-f85cb2afa0af_periodEndLabel_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance</link:label>
    <link:label id="lab_us-gaap_StockholdersEquity_label_en-US" xlink:label="lab_us-gaap_StockholdersEquity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stockholders' Equity Attributable to Parent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StockholdersEquity" xlink:to="lab_us-gaap_StockholdersEquity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_UnrealizedGainLossOnInvestments_c8b41b13-5179-4e25-9f8f-7891f5115b30_negatedLabel_en-US" xlink:label="lab_us-gaap_UnrealizedGainLossOnInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized gain (loss) on investment in trust account</link:label>
    <link:label id="lab_us-gaap_UnrealizedGainLossOnInvestments_eb1c5561-e3b4-48c6-b0d5-b9fbecbd9ee4_negatedTerseLabel_en-US" xlink:label="lab_us-gaap_UnrealizedGainLossOnInvestments" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Non-cash unrealized gain on investment</link:label>
    <link:label id="lab_us-gaap_UnrealizedGainLossOnInvestments_label_en-US" xlink:label="lab_us-gaap_UnrealizedGainLossOnInvestments" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Unrealized Gain (Loss) on Investments</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrealizedGainLossOnInvestments" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrealizedGainLossOnInvestments"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_UnrealizedGainLossOnInvestments" xlink:to="lab_us-gaap_UnrealizedGainLossOnInvestments" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_ProductOrServiceAxis_7c402431-aa32-43ec-a03b-74c327d78c60_terseLabel_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:label id="lab_srt_ProductOrServiceAxis_label_en-US" xlink:label="lab_srt_ProductOrServiceAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product and Service [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_ProductOrServiceAxis" xlink:to="lab_srt_ProductOrServiceAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_71619b8c-a193-4c3a-9ff6-30fff0e836f3_negatedLabel_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Expected return on plan assets</link:label>
    <link:label id="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_label_en-US" xlink:label="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Defined Benefit Plan, Expected Return (Loss) on Plan Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:to="lab_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_756e378d-ecc5-4fe6-9d23-19cb86172e45_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLineItems_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems" xlink:to="lab_us-gaap_LineOfCreditFacilityLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_d16cce45-06d9-4374-858e-a818f499b64b_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Remaining borrowing capacity</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="lab_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InterestExpense_ce23f1d9-b137-480e-b3ef-73ae348cfff0_verboseLabel_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest expense</link:label>
    <link:label id="lab_us-gaap_InterestExpense_label_en-US" xlink:label="lab_us-gaap_InterestExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Interest Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InterestExpense" xlink:to="lab_us-gaap_InterestExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_99624071-7eac-4e2c-a8ba-f434556b9b77_terseLabel_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:label id="lab_dei_EntityInteractiveDataCurrent_label_en-US" xlink:label="lab_dei_EntityInteractiveDataCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityInteractiveDataCurrent" xlink:to="lab_dei_EntityInteractiveDataCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CreditFacilityAxis_ac40cdb8-a5c5-44e1-aab1-d6fa52a0b753_terseLabel_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:label id="lab_us-gaap_CreditFacilityAxis_label_en-US" xlink:label="lab_us-gaap_CreditFacilityAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CreditFacilityAxis" xlink:to="lab_us-gaap_CreditFacilityAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanTypeAxis_e6294bb1-2276-462b-9f21-82059755661b_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Axis]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanTypeAxis_label_en-US" xlink:label="lab_us-gaap_RetirementPlanTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Type [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanTypeAxis" xlink:to="lab_us-gaap_RetirementPlanTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_WarrantyLineItems_fdc55b2d-9bd8-4233-94d2-62f57d371a3a_terseLabel_en-US" xlink:label="lab_virc_WarrantyLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty [Line Items]</link:label>
    <link:label id="lab_virc_WarrantyLineItems_label_en-US" xlink:label="lab_virc_WarrantyLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty [Line Items]</link:label>
    <link:label id="lab_virc_WarrantyLineItems_documentation_en-US" xlink:label="lab_virc_WarrantyLineItems" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_WarrantyLineItems" xlink:href="virc-20230430.xsd#virc_WarrantyLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_WarrantyLineItems" xlink:to="lab_virc_WarrantyLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_c2072c2a-037f-4951-8fd9-d14f4cabac6d_verboseLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Changes in operating assets and liabilities:</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Operating Capital [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:to="lab_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_3fde514c-4115-4bb0-a15e-e64440164692_verboseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureTextBlock_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureTextBlock" xlink:to="lab_us-gaap_InventoryDisclosureTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock_1dcdf830-afa0-4fc5-9039-a8e15fcde11c_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Outstanding balances of long-term debt</link:label>
    <link:label id="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Long-Term Debt Instruments [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:to="lab_us-gaap_ScheduleOfDebtInstrumentsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsMember_82aa13b9-e9ee-4c7c-87d4-5f8f6931a0c1_terseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Deficit</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsMember_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsMember" xlink:to="lab_us-gaap_RetainedEarningsMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_9c2c7fa9-c463-4354-8cbe-fc427c15278d_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Vested in period (shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement_00305771-49b1-4ad5-b58c-fba385c23171_terseLabel_en-US" xlink:label="lab_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase in assemble to ship inventory sublimit under credit agreement</link:label>
    <link:label id="lab_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement_label_en-US" xlink:label="lab_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) In Assemble To Ship Inventory Sublimit Under Credit Agreement</link:label>
    <link:label id="lab_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement_documentation_en-US" xlink:label="lab_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) In Assemble To Ship Inventory Sublimit Under Credit Agreement</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" xlink:to="lab_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherReceivablesNetCurrent_4436e3b0-9ddd-45c8-ae3a-01d896e8fe55_verboseLabel_en-US" xlink:label="lab_us-gaap_OtherReceivablesNetCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other receivables</link:label>
    <link:label id="lab_us-gaap_OtherReceivablesNetCurrent_label_en-US" xlink:label="lab_us-gaap_OtherReceivablesNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Receivables, Net, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherReceivablesNetCurrent" xlink:to="lab_us-gaap_OtherReceivablesNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_3581e9b4-da0d-4978-b284-038282fa9231_terseLabel_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:label id="lab_us-gaap_InventoryDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_InventoryDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventory Disclosure [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_InventoryDisclosureAbstract" xlink:to="lab_us-gaap_InventoryDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_14beb6fd-2919-4cbd-8bf4-eb3315099eaf_terseLabel_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:label id="lab_dei_EntityTaxIdentificationNumber_label_en-US" xlink:label="lab_dei_EntityTaxIdentificationNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityTaxIdentificationNumber" xlink:to="lab_dei_EntityTaxIdentificationNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_ee5bc2ef-76c8-4f99-ac75-b9b670b7cd6a_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards authorized (shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCost_341e2239-1bcf-4c52-9701-5a1770e4d6c9_totalLabel_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Total lease cost</link:label>
    <link:label id="lab_us-gaap_LeaseCost_label_en-US" xlink:label="lab_us-gaap_LeaseCost" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCost" xlink:to="lab_us-gaap_LeaseCost" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsForRent_64a7d33f-9747-4805-a3f3-9d360a576c6d_terseLabel_en-US" xlink:label="lab_us-gaap_PaymentsForRent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash paid for amounts included in the measurement of lease liabilities</link:label>
    <link:label id="lab_us-gaap_PaymentsForRent_label_en-US" xlink:label="lab_us-gaap_PaymentsForRent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments for Rent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsForRent" xlink:to="lab_us-gaap_PaymentsForRent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockMember_f76d6d94-ce86-40ae-8f55-2b1d06b7872e_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock</link:label>
    <link:label id="lab_us-gaap_CommonStockMember_label_en-US" xlink:label="lab_us-gaap_CommonStockMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockMember" xlink:to="lab_us-gaap_CommonStockMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_d49f0f4a-1667-4b6c-b8dc-d6c049f17a74_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Expensed and Capitalized, Amount</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:to="lab_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SelfInsuranceReserveNoncurrent_6c8f76bc-5b18-4b5e-973d-e49bb7cf3032_terseLabel_en-US" xlink:label="lab_us-gaap_SelfInsuranceReserveNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accrued self-insurance retention</link:label>
    <link:label id="lab_us-gaap_SelfInsuranceReserveNoncurrent_label_en-US" xlink:label="lab_us-gaap_SelfInsuranceReserveNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Self Insurance Reserve, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SelfInsuranceReserveNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SelfInsuranceReserveNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SelfInsuranceReserveNoncurrent" xlink:to="lab_us-gaap_SelfInsuranceReserveNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_317b99f4-09dd-4276-ac50-69776064d868_terseLabel_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Quantitative Information of Leases</link:label>
    <link:label id="lab_us-gaap_LeaseCostTableTextBlock_label_en-US" xlink:label="lab_us-gaap_LeaseCostTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lease, Cost [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LeaseCostTableTextBlock" xlink:to="lab_us-gaap_LeaseCostTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_7b7fd683-32fb-44ee-be05-5ee0de59ff8e_terseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Awards available for future issuance (shares)</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TradingActivityByTypeAxis_23534728-ec89-405c-9038-c55fc63f5bae_terseLabel_en-US" xlink:label="lab_us-gaap_TradingActivityByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Activity [Axis]</link:label>
    <link:label id="lab_us-gaap_TradingActivityByTypeAxis_label_en-US" xlink:label="lab_us-gaap_TradingActivityByTypeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Activity [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradingActivityByTypeAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradingActivityByTypeAxis" xlink:to="lab_us-gaap_TradingActivityByTypeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_ScheduleOfWarrantyTable_0e564d03-74d5-40f9-894d-5bc32917af81_terseLabel_en-US" xlink:label="lab_virc_ScheduleOfWarrantyTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Warranty [Table]</link:label>
    <link:label id="lab_virc_ScheduleOfWarrantyTable_label_en-US" xlink:label="lab_virc_ScheduleOfWarrantyTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Warranty [Table]</link:label>
    <link:label id="lab_virc_ScheduleOfWarrantyTable_documentation_en-US" xlink:label="lab_virc_ScheduleOfWarrantyTable" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Warranty [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ScheduleOfWarrantyTable" xlink:href="virc-20230430.xsd#virc_ScheduleOfWarrantyTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_ScheduleOfWarrantyTable" xlink:to="lab_virc_ScheduleOfWarrantyTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementTable_ee52fe91-d9ac-4651-92a7-8ad3e67dd7cc_terseLabel_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:label id="lab_us-gaap_StatementTable_label_en-US" xlink:label="lab_us-gaap_StatementTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementTable" xlink:to="lab_us-gaap_StatementTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetirementPlanSponsorLocationAxis_691e141a-a631-4a22-8c4d-d4a71f6f8d9f_terseLabel_en-US" xlink:label="lab_us-gaap_RetirementPlanSponsorLocationAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Sponsor Location [Axis]</link:label>
    <link:label id="lab_us-gaap_RetirementPlanSponsorLocationAxis_label_en-US" xlink:label="lab_us-gaap_RetirementPlanSponsorLocationAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Plan Sponsor Location [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationAxis" xlink:to="lab_us-gaap_RetirementPlanSponsorLocationAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_392baba6-7c56-4de6-b9a9-290966534bcf_terseLabel_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:label id="lab_us-gaap_RevenueFromContractWithCustomerAbstract_label_en-US" xlink:label="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Revenue from Contract with Customer [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:to="lab_us-gaap_RevenueFromContractWithCustomerAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentQuarterlyReport_886adb86-effb-47d7-b088-cece6187d536_terseLabel_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:label id="lab_dei_DocumentQuarterlyReport_label_en-US" xlink:label="lab_dei_DocumentQuarterlyReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentQuarterlyReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentQuarterlyReport" xlink:to="lab_dei_DocumentQuarterlyReport" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_338225ea-d50f-401b-9e6b-ec7fbdba5ed1_verboseLabel_en-US" xlink:label="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Warranty claim activity</link:label>
    <link:label id="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_label_en-US" xlink:label="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Movement in Standard and Extended Product Warranty Accrual, Increase (Decrease) [Roll Forward]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:to="lab_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_213d7c08-e852-4708-bf29-8a84e4cfebd5_verboseLabel_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Current assets:</link:label>
    <link:label id="lab_us-gaap_AssetsCurrentAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsCurrentAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets, Current [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsCurrentAbstract" xlink:to="lab_us-gaap_AssetsCurrentAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_9984a5da-e971-4c0b-9797-cf8b3b42a643_verboseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease liability, less current portion</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_23ca83a1-5f30-4876-8244-c71ea23c98db_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term lease liabilities</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseLiabilityNoncurrent_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="lab_us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_2ccb1e38-b195-4133-ab15-693dcc097455_terseLabel_en-US" xlink:label="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranties Disclosures [Abstract]</link:label>
    <link:label id="lab_us-gaap_ProductWarrantiesDisclosuresAbstract_label_en-US" xlink:label="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Product Warranties Disclosures [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:to="lab_us-gaap_ProductWarrantiesDisclosuresAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_srt_RangeAxis_8d1e41ca-f23a-4520-a633-aa13a2a2cd4c_terseLabel_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:label id="lab_srt_RangeAxis_label_en-US" xlink:label="lab_srt_RangeAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_srt_RangeAxis" xlink:to="lab_srt_RangeAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_4198a329-d1d3-49de-af26-cd3047e9d522_totalLabel_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net decrease in cash</link:label>
    <link:label id="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_label_en-US" xlink:label="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLenderDomain_fdc9d910-7547-4d5a-a49d-920b9481e949_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLenderDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Lender [Domain]</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityLenderDomain_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityLenderDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Lender [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="lab_us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_f6947e0f-a304-4ae1-bc34-64769686efbe_terseLabel_en-US" xlink:label="lab_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Thereafter</link:label>
    <link:label id="lab_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_label_en-US" xlink:label="lab_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments Due After Year Four</link:label>
    <link:label id="lab_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_documentation_en-US" xlink:label="lab_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Lessee, Operating Lease, Liability, Payments Due After Year Four</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:href="virc-20230430.xsd#virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:to="lab_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_bda2f5a3-d7b2-4ad9-a49a-2cd022c55475_terseLabel_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net effect of dilutive share-based on the treasury stock method using average market price (shares)</link:label>
    <link:label id="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_label_en-US" xlink:label="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Weighted Average Number of Shares Outstanding, Diluted, Adjustment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:to="lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_644bf874-a5e8-4c64-af48-642cf4edb629_verboseLabel_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated deficit</link:label>
    <link:label id="lab_us-gaap_RetainedEarningsAccumulatedDeficit_label_en-US" xlink:label="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retained Earnings (Accumulated Deficit)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="lab_us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_57628530-925f-471d-be69-a8c5126cd789_verboseLabel_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trade accounts receivables, net</link:label>
    <link:label id="lab_us-gaap_AccountsReceivableNetCurrent_label_en-US" xlink:label="lab_us-gaap_AccountsReceivableNetCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounts Receivable, after Allowance for Credit Loss, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccountsReceivableNetCurrent" xlink:to="lab_us-gaap_AccountsReceivableNetCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_EntityCentralIndexKey_e5048bf7-b149-46bd-af11-1732c6596733_terseLabel_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:label id="lab_dei_EntityCentralIndexKey_label_en-US" xlink:label="lab_dei_EntityCentralIndexKey" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_EntityCentralIndexKey" xlink:to="lab_dei_EntityCentralIndexKey" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_3b42b721-c9eb-4934-ac92-8db5cecbcaa6_terseLabel_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:label id="lab_us-gaap_StatementEquityComponentsAxis_label_en-US" xlink:label="lab_us-gaap_StatementEquityComponentsAxis" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementEquityComponentsAxis" xlink:to="lab_us-gaap_StatementEquityComponentsAxis" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_139b10ca-4ddb-4159-934b-edd92c8087bd_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]</link:label>
    <link:label id="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_label_en-US" xlink:label="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:to="lab_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_0ac3b01b-b1cb-41ff-ac72-51468afd8cfb_terseLabel_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other accrued liabilities</link:label>
    <link:label id="lab_us-gaap_OtherAccruedLiabilitiesCurrent_label_en-US" xlink:label="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Other Accrued Liabilities, Current</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:to="lab_us-gaap_OtherAccruedLiabilitiesCurrent" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentFiscalYearFocus_79b760d0-02fe-4aa9-a0e7-f16415e96988_terseLabel_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:label id="lab_dei_DocumentFiscalYearFocus_label_en-US" xlink:label="lab_dei_DocumentFiscalYearFocus" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentFiscalYearFocus" xlink:to="lab_dei_DocumentFiscalYearFocus" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_0bf0c008-006e-425c-a012-6319e90c805f_verboseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating activities</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Operating Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_CityAreaCode_3ec4eecf-0b56-4f87-8cc6-54a3f2556447_terseLabel_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:label id="lab_dei_CityAreaCode_label_en-US" xlink:label="lab_dei_CityAreaCode" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">City Area Code</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_CityAreaCode" xlink:to="lab_dei_CityAreaCode" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementLineItems_6d674349-0879-4506-92e1-74b25d4be6cd_terseLabel_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:label id="lab_us-gaap_StatementLineItems_label_en-US" xlink:label="lab_us-gaap_StatementLineItems" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementLineItems" xlink:to="lab_us-gaap_StatementLineItems" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AssetsAbstract_78f2c69c-4681-4009-b849-ff8f9b05793f_verboseLabel_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets</link:label>
    <link:label id="lab_us-gaap_AssetsAbstract_label_en-US" xlink:label="lab_us-gaap_AssetsAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Assets [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AssetsAbstract" xlink:to="lab_us-gaap_AssetsAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_7f481223-2f2b-473b-ae16-78b2cd20ca99_terseLabel_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-term Debt, Type [Domain]</link:label>
    <link:label id="lab_us-gaap_LongtermDebtTypeDomain_label_en-US" xlink:label="lab_us-gaap_LongtermDebtTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Long-Term Debt, Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LongtermDebtTypeDomain" xlink:to="lab_us-gaap_LongtermDebtTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_8dfd042e-3c1a-47ff-a277-2e1dd9addebc_terseLabel_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Benefits [Abstract]</link:label>
    <link:label id="lab_us-gaap_CompensationAndRetirementDisclosureAbstract_label_en-US" xlink:label="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Retirement Benefits [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:to="lab_us-gaap_CompensationAndRetirementDisclosureAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_f60ab8ef-2a40-4eba-bba8-78c6d2303319_terseLabel_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:label id="lab_us-gaap_StatementOfStockholdersEquityAbstract_label_en-US" xlink:label="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="lab_us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_WorkerscompensationLiabilityInsuranceMember_43e1d1eb-0fb6-41fd-949c-e4459e7ea366_terseLabel_en-US" xlink:label="lab_virc_WorkerscompensationLiabilityInsuranceMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers compensation Liability Insurance [Member]</link:label>
    <link:label id="lab_virc_WorkerscompensationLiabilityInsuranceMember_label_en-US" xlink:label="lab_virc_WorkerscompensationLiabilityInsuranceMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers compensation Liability Insurance [Member]</link:label>
    <link:label id="lab_virc_WorkerscompensationLiabilityInsuranceMember_documentation_en-US" xlink:label="lab_virc_WorkerscompensationLiabilityInsuranceMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Workers compensation Liability Insurance [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_WorkerscompensationLiabilityInsuranceMember" xlink:href="virc-20230430.xsd#virc_WorkerscompensationLiabilityInsuranceMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_WorkerscompensationLiabilityInsuranceMember" xlink:to="lab_virc_WorkerscompensationLiabilityInsuranceMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_63515f4f-ca24-4e51-a778-9087682583c9_verboseLabel_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, general and administrative expenses</link:label>
    <link:label id="lab_us-gaap_SellingGeneralAndAdministrativeExpense_label_en-US" xlink:label="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Selling, General and Administrative Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="lab_us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_98ab8480-b101-4a04-a8ac-0b7d1ceb4308_verboseLabel_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">New Accounting Pronouncements</link:label>
    <link:label id="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_label_en-US" xlink:label="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accounting Standards Update and Change in Accounting Principle [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingenciesTable_f797e8ab-521a-4c5d-ad53-3a7b6553da55_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingenciesTable" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss Contingencies [Table]</link:label>
    <link:label id="lab_us-gaap_LossContingenciesTable_label_en-US" xlink:label="lab_us-gaap_LossContingenciesTable" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Loss Contingencies [Table]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesTable" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LossContingenciesTable"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingenciesTable" xlink:to="lab_us-gaap_LossContingenciesTable" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_0febbff2-f12c-49a5-9775-18d7945265ee_verboseLabel_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Financing activities:</link:label>
    <link:label id="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_label_en-US" xlink:label="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Net Cash Provided by (Used in) Financing Activities [Abstract]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_49f6bc86-c592-4271-96f9-5627471da8a0_terseLabel_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating lease right-of-use assets</link:label>
    <link:label id="lab_us-gaap_OperatingLeaseRightOfUseAsset_label_en-US" xlink:label="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="lab_us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_6649b791-e7f3-4f34-a926-0aa998516106_terseLabel_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Accumulated Other Comprehensive Loss</link:label>
    <link:label id="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember_label_en-US" xlink:label="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">AOCI Attributable to Parent [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:to="lab_us-gaap_AccumulatedOtherComprehensiveIncomeMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LossContingencyDisclosures_6c83d533-bead-4c61-a70a-a6f2249be714_terseLabel_en-US" xlink:label="lab_us-gaap_LossContingencyDisclosures" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingencies</link:label>
    <link:label id="lab_us-gaap_LossContingencyDisclosures_label_en-US" xlink:label="lab_us-gaap_LossContingencyDisclosures" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Contingencies Disclosure [Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyDisclosures" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LossContingencyDisclosures"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LossContingencyDisclosures" xlink:to="lab_us-gaap_LossContingencyDisclosures" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ShareBasedCompensation_c7d54697-329a-46dc-a83e-2f774f81a842_verboseLabel_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Stock-based compensation</link:label>
    <link:label id="lab_us-gaap_ShareBasedCompensation_label_en-US" xlink:label="lab_us-gaap_ShareBasedCompensation" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Share-Based Payment Arrangement, Noncash Expense</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ShareBasedCompensation" xlink:to="lab_us-gaap_ShareBasedCompensation" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_DocumentTransitionReport_3f00ecb6-60f9-4e1e-a48b-565753c64f68_terseLabel_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:label id="lab_dei_DocumentTransitionReport_label_en-US" xlink:label="lab_dei_DocumentTransitionReport" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Document Transition Report</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_DocumentTransitionReport" xlink:to="lab_dei_DocumentTransitionReport" xlink:type="arc" order="1"/>
    <link:label id="lab_dei_LocalPhoneNumber_31f0f4f8-2a8c-4288-b940-1edd841e8baf_terseLabel_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:label id="lab_dei_LocalPhoneNumber_label_en-US" xlink:label="lab_dei_LocalPhoneNumber" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Local Phone Number</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_dei_LocalPhoneNumber" xlink:to="lab_dei_LocalPhoneNumber" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_6521fe38-2405-4336-bd29-33e948d1f3d1_negatedLabel_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Capital expenditures</link:label>
    <link:label id="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_label_en-US" xlink:label="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Payments to Acquire Property, Plant, and Equipment</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_IncreaseDecreaseApplicableMarginBasisPoints_05ef5dec-0a46-4d68-bc43-b7db5aefb57d_terseLabel_en-US" xlink:label="lab_virc_IncreaseDecreaseApplicableMarginBasisPoints" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (decrease) applicable margin basis points</link:label>
    <link:label id="lab_virc_IncreaseDecreaseApplicableMarginBasisPoints_label_en-US" xlink:label="lab_virc_IncreaseDecreaseApplicableMarginBasisPoints" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) Applicable Margin Basis Points</link:label>
    <link:label id="lab_virc_IncreaseDecreaseApplicableMarginBasisPoints_documentation_en-US" xlink:label="lab_virc_IncreaseDecreaseApplicableMarginBasisPoints" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) Applicable Margin Basis Points</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseApplicableMarginBasisPoints" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseApplicableMarginBasisPoints"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_IncreaseDecreaseApplicableMarginBasisPoints" xlink:to="lab_virc_IncreaseDecreaseApplicableMarginBasisPoints" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_d93563fe-9475-44f6-90ee-e0d5829b2b13_totalLabel_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating loss</link:label>
    <link:label id="lab_us-gaap_OperatingIncomeLoss_label_en-US" xlink:label="lab_us-gaap_OperatingIncomeLoss" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Operating Income (Loss)</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_OperatingIncomeLoss" xlink:to="lab_us-gaap_OperatingIncomeLoss" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_MachineryAndEquipmentGross_8288ee8d-f61e-47e9-a721-184380edb018_verboseLabel_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Machinery and equipment</link:label>
    <link:label id="lab_us-gaap_MachineryAndEquipmentGross_label_en-US" xlink:label="lab_us-gaap_MachineryAndEquipmentGross" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Machinery and Equipment, Gross</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_MachineryAndEquipmentGross" xlink:to="lab_us-gaap_MachineryAndEquipmentGross" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_929d4e55-97b3-46f4-bbda-32327619c7e5_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Inventories</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInInventories_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInInventories" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Inventories</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInInventories" xlink:to="lab_us-gaap_IncreaseDecreaseInInventories" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_TradingActivityByTypeDomain_366e7f13-ffbe-45bb-8fbf-5c74edc47160_terseLabel_en-US" xlink:label="lab_us-gaap_TradingActivityByTypeDomain" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Activity, by Type [Domain]</link:label>
    <link:label id="lab_us-gaap_TradingActivityByTypeDomain_label_en-US" xlink:label="lab_us-gaap_TradingActivityByTypeDomain" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Trading Activity, by Type [Domain]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradingActivityByTypeDomain" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeDomain"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_TradingActivityByTypeDomain" xlink:to="lab_us-gaap_TradingActivityByTypeDomain" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_66f04a21-fece-474e-96b4-27024d840275_terseLabel_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted</link:label>
    <link:label id="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_label_en-US" xlink:label="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc" order="1"/>
    <link:label id="lab_virc_GeneralLiabilityLossMember_67266a55-c0e3-48dd-9a92-59002d17b9fd_terseLabel_en-US" xlink:label="lab_virc_GeneralLiabilityLossMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General Liability Loss</link:label>
    <link:label id="lab_virc_GeneralLiabilityLossMember_label_en-US" xlink:label="lab_virc_GeneralLiabilityLossMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General Liability Loss [Member]</link:label>
    <link:label id="lab_virc_GeneralLiabilityLossMember_documentation_en-US" xlink:label="lab_virc_GeneralLiabilityLossMember" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">General Liability Loss</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_virc_GeneralLiabilityLossMember" xlink:href="virc-20230430.xsd#virc_GeneralLiabilityLossMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_virc_GeneralLiabilityLossMember" xlink:to="lab_virc_GeneralLiabilityLossMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CostOfSalesMember_350b5904-f230-4e53-b324-fc6ea6d52a86_terseLabel_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Goods Sold [Member]</link:label>
    <link:label id="lab_us-gaap_CostOfSalesMember_label_en-US" xlink:label="lab_us-gaap_CostOfSalesMember" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Cost of Sales [Member]</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CostOfSalesMember" xlink:to="lab_us-gaap_CostOfSalesMember" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_7900fef5-cf2c-4b32-82ad-a0fa4c321e95_negatedLabel_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Prepaid expenses and other current assets</link:label>
    <link:label id="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_label_en-US" xlink:label="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Increase (Decrease) in Prepaid Expense and Other Assets</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_cad1421e-19ce-4fac-84ea-ce9fc77c9068_terseLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common stock, shares outstanding (shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_16ff421c-1526-4054-a0b3-023c651d8bd6_periodStartLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Beginning balance (shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_25a1a9ef-77d8-4ba9-b923-de52baed1b00_periodEndLabel_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Ending balance (shares)</link:label>
    <link:label id="lab_us-gaap_CommonStockSharesOutstanding_label_en-US" xlink:label="lab_us-gaap_CommonStockSharesOutstanding" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Common Stock, Shares, Outstanding</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_CommonStockSharesOutstanding" xlink:to="lab_us-gaap_CommonStockSharesOutstanding" xlink:type="arc" order="1"/>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases_1780ed8a-c3b9-438b-8da7-e36efebd03f9_terseLabel_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of credit facility, equipment financing</link:label>
    <link:label id="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases_label_en-US" xlink:label="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xmlns:xml="http://www.w3.org/XML/1998/namespace" xml:lang="en-US">Line of Credit Facility, Capacity Available for Specific Purpose Other than for Trade Purchases</link:label>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases"/>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases" xlink:to="lab_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases" xlink:type="arc" order="1"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>9
<FILENAME>virc-20230430_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version="1.0" encoding="UTF-8"?>

<!--XBRL Document Created with the Workiva Platform-->
<!--Copyright 2023 Workiva-->
<!--r:90287618-5607-4752-928b-06db944cd7f3,g:6eff466f-1bee-465d-8a0c-2ce3a06f0245-->
<link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.virco.com/role/CoverPage" xlink:type="simple" xlink:href="virc-20230430.xsd#CoverPage"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/CoverPage" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CoverAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentType_a2ffd606-652d-4721-ab60-1cb55c2ee942" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_DocumentType_a2ffd606-652d-4721-ab60-1cb55c2ee942" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentQuarterlyReport_26a20241-6658-4e37-87da-4e3ad8bdf1c6" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentQuarterlyReport"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_DocumentQuarterlyReport_26a20241-6658-4e37-87da-4e3ad8bdf1c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentPeriodEndDate_aef17ce5-3d49-4019-807a-e55fb03cdeda" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_DocumentPeriodEndDate_aef17ce5-3d49-4019-807a-e55fb03cdeda" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentTransitionReport_2b574975-c6f9-4b31-8e8b-c0c144e8d45f" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_DocumentTransitionReport_2b574975-c6f9-4b31-8e8b-c0c144e8d45f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFileNumber_c81f0522-82bf-41ad-b489-8f0188da6e03" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityFileNumber_c81f0522-82bf-41ad-b489-8f0188da6e03" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityRegistrantName_57f21ac3-29e9-4907-ae0d-12cf6b6c2798" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityRegistrantName_57f21ac3-29e9-4907-ae0d-12cf6b6c2798" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityIncorporationStateCountryCode_d65ff576-9314-4c3b-ac1d-3e87116e12e8" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityIncorporationStateCountryCode_d65ff576-9314-4c3b-ac1d-3e87116e12e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityTaxIdentificationNumber_95f4ed03-4506-4f89-abaa-57ac64ca0a5a" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityTaxIdentificationNumber_95f4ed03-4506-4f89-abaa-57ac64ca0a5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressAddressLine1_313dcd7b-00a3-40df-a72d-a18d79df554b" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityAddressAddressLine1_313dcd7b-00a3-40df-a72d-a18d79df554b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressCityOrTown_8c94884c-0a5e-4df3-86df-aae640a91ff0" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityAddressCityOrTown_8c94884c-0a5e-4df3-86df-aae640a91ff0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressStateOrProvince_ff6c8409-76f7-4fec-97e0-08c8b219e5cf" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityAddressStateOrProvince_ff6c8409-76f7-4fec-97e0-08c8b219e5cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityAddressPostalZipCode_3e9c79f1-d48d-4c2a-9019-9a4deef97ea8" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityAddressPostalZipCode_3e9c79f1-d48d-4c2a-9019-9a4deef97ea8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CityAreaCode_5dec4483-c554-4fe8-b4f6-263bc35e40db" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_CityAreaCode_5dec4483-c554-4fe8-b4f6-263bc35e40db" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_LocalPhoneNumber_c3042fd3-c178-4a80-8f8d-db1dd8b0364c" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_LocalPhoneNumber_c3042fd3-c178-4a80-8f8d-db1dd8b0364c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_Security12bTitle_aab53552-4415-47b0-a436-e8695081c2b2" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_Security12bTitle_aab53552-4415-47b0-a436-e8695081c2b2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_TradingSymbol_753d0252-7b09-4c2e-9549-fc51bbb808cf" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_TradingSymbol_753d0252-7b09-4c2e-9549-fc51bbb808cf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_SecurityExchangeName_3c1f6eb7-4899-4a8e-82aa-87c7111ff494" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_SecurityExchangeName_3c1f6eb7-4899-4a8e-82aa-87c7111ff494" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCentralIndexKey_b3b22a82-8791-4087-8f48-2994bc2026b8" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityCentralIndexKey_b3b22a82-8791-4087-8f48-2994bc2026b8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCurrentReportingStatus_9b7bea06-38f7-49a5-a787-856ccbadd179" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityCurrentReportingStatus_9b7bea06-38f7-49a5-a787-856ccbadd179" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityInteractiveDataCurrent_c089f1f0-c959-4768-8d5a-4a4799bca350" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityInteractiveDataCurrent_c089f1f0-c959-4768-8d5a-4a4799bca350" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityFilerCategory_35a14f0d-6f04-44e7-b9cf-c4d885008aa8" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityFilerCategory_35a14f0d-6f04-44e7-b9cf-c4d885008aa8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntitySmallBusiness_75b3dbc3-a7a7-4259-b9de-5f877c13e103" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness"/>
    <link:presentationArc order="22" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntitySmallBusiness_75b3dbc3-a7a7-4259-b9de-5f877c13e103" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityEmergingGrowthCompany_002effa8-8b22-4fd1-9ef1-704dfc74a98f" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany"/>
    <link:presentationArc order="23" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityEmergingGrowthCompany_002effa8-8b22-4fd1-9ef1-704dfc74a98f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityShellCompany_ddf2edfc-78a9-431f-b089-0049660379a7" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany"/>
    <link:presentationArc order="24" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityShellCompany_ddf2edfc-78a9-431f-b089-0049660379a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_EntityCommonStockSharesOutstanding_a4828921-190e-4120-9478-657c1fa2ace9" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding"/>
    <link:presentationArc order="25" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_EntityCommonStockSharesOutstanding_a4828921-190e-4120-9478-657c1fa2ace9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_CurrentFiscalYearEndDate_9e410c1a-a9aa-41b8-9e43-6a97f75e05cd" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate"/>
    <link:presentationArc order="26" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_CurrentFiscalYearEndDate_9e410c1a-a9aa-41b8-9e43-6a97f75e05cd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalYearFocus_b2f54528-2a0f-48c3-8848-c471270a766c" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus"/>
    <link:presentationArc order="27" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_DocumentFiscalYearFocus_b2f54528-2a0f-48c3-8848-c471270a766c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_DocumentFiscalPeriodFocus_0eac44f8-cfba-4b2b-85d7-5509f3d8b63e" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus"/>
    <link:presentationArc order="28" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_DocumentFiscalPeriodFocus_0eac44f8-cfba-4b2b-85d7-5509f3d8b63e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_dei_AmendmentFlag_9c6288dc-1e0b-4e2b-a407-864b622400bf" xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag"/>
    <link:presentationArc order="29" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_dei_CoverAbstract_85c5ddf1-8ecb-46fb-ac6e-977a24f77e46" xlink:to="loc_dei_AmendmentFlag_9c6288dc-1e0b-4e2b-a407-864b622400bf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedBalanceSheets"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_e82a07bb-77da-4f2f-b936-7c251b689bde" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsAbstract_de9928fe-4da7-406e-a1d8-b6ac3269e36c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_e82a07bb-77da-4f2f-b936-7c251b689bde" xlink:to="loc_us-gaap_AssetsAbstract_de9928fe-4da7-406e-a1d8-b6ac3269e36c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_de9928fe-4da7-406e-a1d8-b6ac3269e36c" xlink:to="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Cash_e616c60c-a091-4049-a666-c7c569f72808" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Cash"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:to="loc_us-gaap_Cash_e616c60c-a091-4049-a666-c7c569f72808" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableNetCurrent_be6b6726-60e0-4ac8-94dd-84ecd4cc3786" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:to="loc_us-gaap_AccountsReceivableNetCurrent_be6b6726-60e0-4ac8-94dd-84ecd4cc3786" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherReceivablesNetCurrent_535119a3-3d99-4575-900d-445c0252417d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherReceivablesNetCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:to="loc_us-gaap_OtherReceivablesNetCurrent_535119a3-3d99-4575-900d-445c0252417d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxesReceivable_9cc0c013-c0d1-49f4-9a28-4ef153abc451" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxesReceivable"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:to="loc_us-gaap_IncomeTaxesReceivable_9cc0c013-c0d1-49f4-9a28-4ef153abc451" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_a40122b8-30dd-48e0-b42f-7d589efbfe0b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:to="loc_us-gaap_InventoryNet_a40122b8-30dd-48e0-b42f-7d589efbfe0b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_febb7add-9555-4714-bf40-3926a70ab3a3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:to="loc_us-gaap_PrepaidExpenseAndOtherAssetsCurrent_febb7add-9555-4714-bf40-3926a70ab3a3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AssetsCurrent_da7fc06b-2b2f-4b51-a5ac-60617b83f807" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsCurrentAbstract_76a36a0e-d588-416f-826b-e8272de83234" xlink:to="loc_us-gaap_AssetsCurrent_da7fc06b-2b2f-4b51-a5ac-60617b83f807" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_de9928fe-4da7-406e-a1d8-b6ac3269e36c" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Land_66e2f89a-b7e1-4f34-a1bf-b143e3d66be2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Land"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:to="loc_us-gaap_Land_66e2f89a-b7e1-4f34-a1bf-b143e3d66be2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LandImprovements_93a4be86-5eac-4e1d-b172-6c4c3576aef6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LandImprovements"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:to="loc_us-gaap_LandImprovements_93a4be86-5eac-4e1d-b172-6c4c3576aef6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_BuildingsAndImprovementsGross_1ce876cc-b02b-431c-b388-2f75f5a21701" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BuildingsAndImprovementsGross"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:to="loc_us-gaap_BuildingsAndImprovementsGross_1ce876cc-b02b-431c-b388-2f75f5a21701" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MachineryAndEquipmentGross_d91967f0-9d2f-459a-b3e5-13064eafb1d5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MachineryAndEquipmentGross"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:to="loc_us-gaap_MachineryAndEquipmentGross_d91967f0-9d2f-459a-b3e5-13064eafb1d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseholdImprovementsGross_ccab5c67-7056-48ab-8948-a0795c85f806" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseholdImprovementsGross"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:to="loc_us-gaap_LeaseholdImprovementsGross_ccab5c67-7056-48ab-8948-a0795c85f806" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentGross_7b8eaae0-cbe9-40f0-900e-e473a622c273" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentGross"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentGross_7b8eaae0-cbe9-40f0-900e-e473a622c273" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_e410da3c-7cd9-4284-a19d-95c1749961e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:to="loc_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment_e410da3c-7cd9-4284-a19d-95c1749961e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PropertyPlantAndEquipmentNet_fa978405-ef9c-45c1-afd9-99f4ac50a5ff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PropertyPlantAndEquipmentAbstract_978895b9-90ec-457e-8add-57f400516697" xlink:to="loc_us-gaap_PropertyPlantAndEquipmentNet_fa978405-ef9c-45c1-afd9-99f4ac50a5ff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseRightOfUseAsset_57c49c1e-8067-4337-8aab-c5aa18b3115a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_de9928fe-4da7-406e-a1d8-b6ac3269e36c" xlink:to="loc_us-gaap_OperatingLeaseRightOfUseAsset_57c49c1e-8067-4337-8aab-c5aa18b3115a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxAssetsNet_0984fa04-effb-4fca-ab90-a803200f7f3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxAssetsNet"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_de9928fe-4da7-406e-a1d8-b6ac3269e36c" xlink:to="loc_us-gaap_DeferredIncomeTaxAssetsNet_0984fa04-effb-4fca-ab90-a803200f7f3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAssetsNoncurrent_40834374-35ba-4d34-a794-1dcac6af7006" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_de9928fe-4da7-406e-a1d8-b6ac3269e36c" xlink:to="loc_us-gaap_OtherAssetsNoncurrent_40834374-35ba-4d34-a794-1dcac6af7006" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_Assets_5d77968e-3559-4bf2-b30d-f50ac6fb3e37" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AssetsAbstract_de9928fe-4da7-406e-a1d8-b6ac3269e36c" xlink:to="loc_us-gaap_Assets_5d77968e-3559-4bf2-b30d-f50ac6fb3e37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAbstract_01a5c615-fa74-4c18-beff-9c544727435e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_e82a07bb-77da-4f2f-b936-7c251b689bde" xlink:to="loc_us-gaap_LiabilitiesAbstract_01a5c615-fa74-4c18-beff-9c544727435e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrentAbstract_c6b39a00-8ab8-44e4-adc9-63edea22a02f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_01a5c615-fa74-4c18-beff-9c544727435e" xlink:to="loc_us-gaap_LiabilitiesCurrentAbstract_c6b39a00-8ab8-44e4-adc9-63edea22a02f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsPayableCurrent_d88573e9-00ca-4879-8119-dfd7bd85f297" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableCurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c6b39a00-8ab8-44e4-adc9-63edea22a02f" xlink:to="loc_us-gaap_AccountsPayableCurrent_d88573e9-00ca-4879-8119-dfd7bd85f297" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_a8efdd4d-d370-48c6-9b90-f25cecc52026" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c6b39a00-8ab8-44e4-adc9-63edea22a02f" xlink:to="loc_us-gaap_EmployeeRelatedLiabilitiesCurrent_a8efdd4d-d370-48c6-9b90-f25cecc52026" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_022ccd3d-f05b-4ef0-bf93-ea1831bd5efc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c6b39a00-8ab8-44e4-adc9-63edea22a02f" xlink:to="loc_us-gaap_LongTermDebtCurrent_022ccd3d-f05b-4ef0-bf93-ea1831bd5efc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_869a6162-c315-4949-8905-b15b7b4627c0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c6b39a00-8ab8-44e4-adc9-63edea22a02f" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_869a6162-c315-4949-8905-b15b7b4627c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesCurrent_0d9a3627-1a48-47bc-b54f-e477284aceb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesCurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c6b39a00-8ab8-44e4-adc9-63edea22a02f" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesCurrent_0d9a3627-1a48-47bc-b54f-e477284aceb2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesCurrent_46090867-a305-4645-a954-7ac9c304341e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesCurrentAbstract_c6b39a00-8ab8-44e4-adc9-63edea22a02f" xlink:to="loc_us-gaap_LiabilitiesCurrent_46090867-a305-4645-a954-7ac9c304341e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrentAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesAbstract_01a5c615-fa74-4c18-beff-9c544727435e" xlink:to="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SelfInsuranceReserveNoncurrent_9975d6a4-7d28-4d7c-bf13-2d6ec9d060a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SelfInsuranceReserveNoncurrent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:to="loc_us-gaap_SelfInsuranceReserveNoncurrent_9975d6a4-7d28-4d7c-bf13-2d6ec9d060a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent_4440def6-7412-48e4-ab49-d7d7b2ea7a94" xlink:href="virc-20230430.xsd#virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:to="loc_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent_4440def6-7412-48e4-ab49-d7d7b2ea7a94" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccruedIncomeTaxesNoncurrent_923eae1a-3296-40b3-8fb1-78483123f30b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccruedIncomeTaxesNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:to="loc_us-gaap_AccruedIncomeTaxesNoncurrent_923eae1a-3296-40b3-8fb1-78483123f30b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_653ada90-6f84-4ef0-8add-c43cbe418b08" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_653ada90-6f84-4ef0-8add-c43cbe418b08" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_c4dc9de7-8f0c-4b41-8ee0-bff2eb8a4be4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_c4dc9de7-8f0c-4b41-8ee0-bff2eb8a4be4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherAccruedLiabilitiesNoncurrent_4602d4fd-f4d6-4c0c-a02d-feef210b6527" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAccruedLiabilitiesNoncurrent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:to="loc_us-gaap_OtherAccruedLiabilitiesNoncurrent_4602d4fd-f4d6-4c0c-a02d-feef210b6527" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesNoncurrent_d63ea998-6742-41ec-8193-8893fd9e9440" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesNoncurrent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LiabilitiesNoncurrentAbstract_1ce5dcff-40a2-4435-bafe-49962b8c1876" xlink:to="loc_us-gaap_LiabilitiesNoncurrent_d63ea998-6742-41ec-8193-8893fd9e9440" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingencies_fcc62079-b8ef-4ff6-a829-87c14b3293af" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_e82a07bb-77da-4f2f-b936-7c251b689bde" xlink:to="loc_us-gaap_CommitmentsAndContingencies_fcc62079-b8ef-4ff6-a829-87c14b3293af" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquityAbstract_9da42861-8997-4c70-8f82-41b859fd565d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_e82a07bb-77da-4f2f-b936-7c251b689bde" xlink:to="loc_us-gaap_StockholdersEquityAbstract_9da42861-8997-4c70-8f82-41b859fd565d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract_6ce38053-05bc-436f-971b-911512724a72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_9da42861-8997-4c70-8f82-41b859fd565d" xlink:to="loc_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract_6ce38053-05bc-436f-971b-911512724a72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockValue_da3014a5-e018-418b-aa1b-41d959f2bc97" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract_6ce38053-05bc-436f-971b-911512724a72" xlink:to="loc_us-gaap_PreferredStockValue_da3014a5-e018-418b-aa1b-41d959f2bc97" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract_b3917bd2-75e3-4a2d-a20e-3603a3b579e8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_9da42861-8997-4c70-8f82-41b859fd565d" xlink:to="loc_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract_b3917bd2-75e3-4a2d-a20e-3603a3b579e8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockValue_e9dc543a-c417-4eb0-bc57-763ebf7665ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract_b3917bd2-75e3-4a2d-a20e-3603a3b579e8" xlink:to="loc_us-gaap_CommonStockValue_e9dc543a-c417-4eb0-bc57-763ebf7665ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapital_31d56c7b-eff6-4690-9293-4548feac81b1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapital"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract_b3917bd2-75e3-4a2d-a20e-3603a3b579e8" xlink:to="loc_us-gaap_AdditionalPaidInCapital_31d56c7b-eff6-4690-9293-4548feac81b1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsAccumulatedDeficit_cf5ba765-4708-4045-8daa-7eff40e3fa4e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract_b3917bd2-75e3-4a2d-a20e-3603a3b579e8" xlink:to="loc_us-gaap_RetainedEarningsAccumulatedDeficit_cf5ba765-4708-4045-8daa-7eff40e3fa4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_98985403-eb61-42cb-b47d-1100be2d438c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract_b3917bd2-75e3-4a2d-a20e-3603a3b579e8" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax_98985403-eb61-42cb-b47d-1100be2d438c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_80fe480a-6a53-4f1c-b5ff-edcb66f7f772" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StockholdersEquityAbstract_9da42861-8997-4c70-8f82-41b859fd565d" xlink:to="loc_us-gaap_StockholdersEquity_80fe480a-6a53-4f1c-b5ff-edcb66f7f772" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LiabilitiesAndStockholdersEquity_f3424756-b7f1-4223-80b6-ba9b5d513087" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_e82a07bb-77da-4f2f-b936-7c251b689bde" xlink:to="loc_us-gaap_LiabilitiesAndStockholdersEquity_f3424756-b7f1-4223-80b6-ba9b5d513087" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedBalanceSheetsParenthetical"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesAuthorized_059fb370-7c23-4726-8b3d-43f96ba13556" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:to="loc_us-gaap_PreferredStockSharesAuthorized_059fb370-7c23-4726-8b3d-43f96ba13556" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockParOrStatedValuePerShare_9b03f374-50b5-46a2-ae7a-6b888369f25f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockParOrStatedValuePerShare"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:to="loc_us-gaap_PreferredStockParOrStatedValuePerShare_9b03f374-50b5-46a2-ae7a-6b888369f25f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesIssued_4f285d17-dda2-49cd-9c52-5006a99b1655" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:to="loc_us-gaap_PreferredStockSharesIssued_4f285d17-dda2-49cd-9c52-5006a99b1655" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PreferredStockSharesOutstanding_413da5a0-957c-4709-a8e7-5535bb08d787" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:to="loc_us-gaap_PreferredStockSharesOutstanding_413da5a0-957c-4709-a8e7-5535bb08d787" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesAuthorized_faab2bed-86b5-4663-9887-c8d1249636b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:to="loc_us-gaap_CommonStockSharesAuthorized_faab2bed-86b5-4663-9887-c8d1249636b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockParOrStatedValuePerShare_18b99ce2-f71a-4c7a-bfbd-e939bbc56d6b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockParOrStatedValuePerShare"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:to="loc_us-gaap_CommonStockParOrStatedValuePerShare_18b99ce2-f71a-4c7a-bfbd-e939bbc56d6b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesIssued_00b4a3e0-0421-4302-81b1-fa7a990c570a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:to="loc_us-gaap_CommonStockSharesIssued_00b4a3e0-0421-4302-81b1-fa7a990c570a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_e0f6572c-8e88-40d5-abe0-a15dd0c42662" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfFinancialPositionAbstract_9e1c93f1-d93e-427a-8613-b8b2d8201414" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_e0f6572c-8e88-40d5-abe0-a15dd0c42662" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedStatementsofIncome"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_77aef2a8-a29c-4717-b110-9d95da27e7fa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax_77aef2a8-a29c-4717-b110-9d95da27e7fa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfGoodsAndServicesSold_addeac7b-7892-43ca-a248-37b9f28f911b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_CostOfGoodsAndServicesSold_addeac7b-7892-43ca-a248-37b9f28f911b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_GrossProfit_4a99d974-226b-43c9-8e7d-a872dc54fae0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_GrossProfit_4a99d974-226b-43c9-8e7d-a872dc54fae0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpense_5082f8a5-2f4f-433d-9caf-fc900bca3c00" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpense_5082f8a5-2f4f-433d-9caf-fc900bca3c00" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingIncomeLoss_0ddc28f1-faea-469e-91cc-dfba05a53992" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_OperatingIncomeLoss_0ddc28f1-faea-469e-91cc-dfba05a53992" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrealizedGainLossOnInvestments_759730a1-72fa-4ea6-afce-51a7bfe40ce6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrealizedGainLossOnInvestments"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_UnrealizedGainLossOnInvestments_759730a1-72fa-4ea6-afce-51a7bfe40ce6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent_aefa7aad-20ab-4d5c-b258-a8aec3f8dd25" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent_aefa7aad-20ab-4d5c-b258-a8aec3f8dd25" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InterestExpense_2b5990fc-bda7-4ad1-8eb4-30755357b2f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_InterestExpense_2b5990fc-bda7-4ad1-8eb4-30755357b2f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_aca6603c-bdf5-46e2-98b2-3bccf2a6b61c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest_aca6603c-bdf5-46e2-98b2-3bccf2a6b61c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxExpenseBenefit_ce92db86-5edc-4878-a002-5bf077f7af1e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_IncomeTaxExpenseBenefit_ce92db86-5edc-4878-a002-5bf077f7af1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_a5567b69-5fa8-4b15-add8-a6763f1d0dcf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_NetIncomeLoss_a5567b69-5fa8-4b15-add8-a6763f1d0dcf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_f3d05d9c-5b5c-4bab-99c4-903abaced2ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_EarningsPerShareAbstract_f3d05d9c-5b5c-4bab-99c4-903abaced2ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_c6ce6c19-aadf-4514-beee-c57781b45d4d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_f3d05d9c-5b5c-4bab-99c4-903abaced2ea" xlink:to="loc_us-gaap_EarningsPerShareBasic_c6ce6c19-aadf-4514-beee-c57781b45d4d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_a60ff1f6-8284-417d-83ca-332cc73f7e44" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_f3d05d9c-5b5c-4bab-99c4-903abaced2ea" xlink:to="loc_us-gaap_EarningsPerShareDiluted_a60ff1f6-8284-417d-83ca-332cc73f7e44" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_2196ff8f-7ac6-4f65-9912-50cba2d707a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementAbstract_e1e9cf2c-73cf-40a9-80f9-03a23e91ecf6" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_2196ff8f-7ac6-4f65-9912-50cba2d707a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_f1f413e8-604a-4741-818e-4a0484de5548" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_2196ff8f-7ac6-4f65-9912-50cba2d707a2" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_f1f413e8-604a-4741-818e-4a0484de5548" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_1fe05a8c-1430-471d-9a92-074932cd7a1a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract_2196ff8f-7ac6-4f65-9912-50cba2d707a2" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_1fe05a8c-1430-471d-9a92-074932cd7a1a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7dbd7d7e-fe0d-4f91-a088-e5071e0ed45a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_08509cda-cc9d-4e1e-a451-540685985cad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7dbd7d7e-fe0d-4f91-a088-e5071e0ed45a" xlink:to="loc_us-gaap_NetIncomeLoss_08509cda-cc9d-4e1e-a451-540685985cad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_1a6f48eb-cdb5-4ebb-948d-b8789a8f91a5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7dbd7d7e-fe0d-4f91-a088-e5071e0ed45a" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_1a6f48eb-cdb5-4ebb-948d-b8789a8f91a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_d184fde4-5539-40c1-927d-5cc11755f356" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract_1a6f48eb-cdb5-4ebb-948d-b8789a8f91a5" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_d184fde4-5539-40c1-927d-5cc11755f356" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ComprehensiveIncomeNetOfTax_1f5d0062-782f-4a7f-aaa8-936c9b8d8d07" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ComprehensiveIncomeNetOfTax"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_7dbd7d7e-fe0d-4f91-a088-e5071e0ed45a" xlink:to="loc_us-gaap_ComprehensiveIncomeNetOfTax_1f5d0062-782f-4a7f-aaa8-936c9b8d8d07" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLossParentheticals" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLossParentheticals"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLossParentheticals" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a7cf3c2f-a4a4-4b7e-aaec-e3a13e910105" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax_4f3a69c0-b7d4-460e-999b-3b9e07bc5abe" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract_a7cf3c2f-a4a4-4b7e-aaec-e3a13e910105" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax_4f3a69c0-b7d4-460e-999b-3b9e07bc5abe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedCondensedConsolidatedStatementsofCashFlows"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfCashFlowsAbstract_dcbc50cf-b9f7-491a-881c-354c27fe2b3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_a3532af0-c0ca-411e-a40c-2d3ed44a934b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_dcbc50cf-b9f7-491a-881c-354c27fe2b3e" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_a3532af0-c0ca-411e-a40c-2d3ed44a934b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_220de5de-3a7d-4d3a-9f64-507b05c4f4a7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_a3532af0-c0ca-411e-a40c-2d3ed44a934b" xlink:to="loc_us-gaap_NetIncomeLoss_220de5de-3a7d-4d3a-9f64-507b05c4f4a7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_a3532af0-c0ca-411e-a40c-2d3ed44a934b" xlink:to="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DepreciationDepletionAndAmortization_6fb597a6-6042-4e98-9624-fb9f9cdc2b76" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_us-gaap_DepreciationDepletionAndAmortization_6fb597a6-6042-4e98-9624-fb9f9cdc2b76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_NoncashRentExpense_8dc3d126-c742-4d2b-8776-3739abf6adfe" xlink:href="virc-20230430.xsd#virc_NoncashRentExpense"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_virc_NoncashRentExpense_8dc3d126-c742-4d2b-8776-3739abf6adfe" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProvisionForDoubtfulAccounts_74f77e16-5ab2-4712-a9e8-53a681204781" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_us-gaap_ProvisionForDoubtfulAccounts_74f77e16-5ab2-4712-a9e8-53a681204781" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AmortizationOfFinancingCosts_abe71230-0547-42ab-b44e-7f60ce4bb39a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfFinancingCosts"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_us-gaap_AmortizationOfFinancingCosts_abe71230-0547-42ab-b44e-7f60ce4bb39a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_bb67a75a-cfda-4f75-834b-3180d8c41c7c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredIncomeTaxesAndTaxCredits"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_us-gaap_DeferredIncomeTaxesAndTaxCredits_bb67a75a-cfda-4f75-834b-3180d8c41c7c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensation_38e5cb52-3ec0-419f-bdbc-d97a55e6970b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_us-gaap_ShareBasedCompensation_38e5cb52-3ec0-419f-bdbc-d97a55e6970b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax_5df781b0-6763-4b72-91f4-ff188f1c4400" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax_5df781b0-6763-4b72-91f4-ff188f1c4400" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_UnrealizedGainLossOnInvestments_18f87212-da59-473d-b259-88a2d10351f0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_UnrealizedGainLossOnInvestments"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_us-gaap_UnrealizedGainLossOnInvestments_18f87212-da59-473d-b259-88a2d10351f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_91512643-6cce-4c35-a0de-d274a12864bd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingCapitalAbstract"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract_2d2cf052-b752-4fcf-8188-5c83be3b4e09" xlink:to="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_91512643-6cce-4c35-a0de-d274a12864bd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_94bd2bd0-82dc-4643-be0b-1e8f45c3400e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_91512643-6cce-4c35-a0de-d274a12864bd" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsReceivable_94bd2bd0-82dc-4643-be0b-1e8f45c3400e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInOtherReceivables_5ff938a1-15be-4217-a913-04f4ec2bba90" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherReceivables"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_91512643-6cce-4c35-a0de-d274a12864bd" xlink:to="loc_us-gaap_IncreaseDecreaseInOtherReceivables_5ff938a1-15be-4217-a913-04f4ec2bba90" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInInventories_71859376-827e-44d9-ac34-6965eaece901" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_91512643-6cce-4c35-a0de-d274a12864bd" xlink:to="loc_us-gaap_IncreaseDecreaseInInventories_71859376-827e-44d9-ac34-6965eaece901" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInIncomeTaxes_468f6ad2-0e33-4d68-a3a6-2488715d24f0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInIncomeTaxes"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_91512643-6cce-4c35-a0de-d274a12864bd" xlink:to="loc_us-gaap_IncreaseDecreaseInIncomeTaxes_468f6ad2-0e33-4d68-a3a6-2488715d24f0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_94b7ec39-5e6f-4a98-82bb-3ea6bcc5098e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_91512643-6cce-4c35-a0de-d274a12864bd" xlink:to="loc_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets_94b7ec39-5e6f-4a98-82bb-3ea6bcc5098e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_17181221-0ba2-4367-9897-a82940e59566" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInOperatingCapitalAbstract_91512643-6cce-4c35-a0de-d274a12864bd" xlink:to="loc_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities_17181221-0ba2-4367-9897-a82940e59566" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6957fa76-3c69-403f-add7-b48b7c0bcc2a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract_a3532af0-c0ca-411e-a40c-2d3ed44a934b" xlink:to="loc_us-gaap_NetCashProvidedByUsedInOperatingActivities_6957fa76-3c69-403f-add7-b48b7c0bcc2a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_cfbc720d-a9ac-46cf-94f9-1fda4c482a09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_dcbc50cf-b9f7-491a-881c-354c27fe2b3e" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_cfbc720d-a9ac-46cf-94f9-1fda4c482a09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_6910f343-aa82-4af3-89c3-4bc554fb7fb9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_cfbc720d-a9ac-46cf-94f9-1fda4c482a09" xlink:to="loc_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment_6910f343-aa82-4af3-89c3-4bc554fb7fb9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_7ada4458-e5bf-4a07-bfa3-59483a2bc636" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract_cfbc720d-a9ac-46cf-94f9-1fda4c482a09" xlink:to="loc_us-gaap_NetCashProvidedByUsedInInvestingActivities_7ada4458-e5bf-4a07-bfa3-59483a2bc636" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d9f849ca-e72a-4e81-97e5-ca17a7e1c8b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_dcbc50cf-b9f7-491a-881c-354c27fe2b3e" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d9f849ca-e72a-4e81-97e5-ca17a7e1c8b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_9f7fae10-0a98-4116-aab3-349e8d43ca71" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromIssuanceOfLongTermDebt"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d9f849ca-e72a-4e81-97e5-ca17a7e1c8b4" xlink:to="loc_us-gaap_ProceedsFromIssuanceOfLongTermDebt_9f7fae10-0a98-4116-aab3-349e8d43ca71" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RepaymentsOfLongTermDebt_d993172a-26a7-4d58-816e-e839c4d9ee39" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d9f849ca-e72a-4e81-97e5-ca17a7e1c8b4" xlink:to="loc_us-gaap_RepaymentsOfLongTermDebt_d993172a-26a7-4d58-816e-e839c4d9ee39" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsOfFinancingCosts_8b2c2881-d24b-47bd-8151-362d8b890366" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d9f849ca-e72a-4e81-97e5-ca17a7e1c8b4" xlink:to="loc_us-gaap_PaymentsOfFinancingCosts_8b2c2881-d24b-47bd-8151-362d8b890366" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bd366e17-360d-4fef-a14d-dbdc0f08282c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract_d9f849ca-e72a-4e81-97e5-ca17a7e1c8b4" xlink:to="loc_us-gaap_NetCashProvidedByUsedInFinancingActivities_bd366e17-360d-4fef-a14d-dbdc0f08282c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_69006e5d-f3e3-4536-a956-5623fdee4fe8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_dcbc50cf-b9f7-491a-881c-354c27fe2b3e" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect_69006e5d-f3e3-4536-a956-5623fdee4fe8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d2f962fd-1ab7-414e-96a5-5f0b37bfa4b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_dcbc50cf-b9f7-491a-881c-354c27fe2b3e" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_d2f962fd-1ab7-414e-96a5-5f0b37bfa4b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_25f9c247-e9bb-421c-ad26-cbcf245515c5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfCashFlowsAbstract_dcbc50cf-b9f7-491a-881c-354c27fe2b3e" xlink:to="loc_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents_25f9c247-e9bb-421c-ad26-cbcf245515c5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedConsolidatedStatementsofChangesinStockholdersEquity"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_80359ba2-574b-4dbc-a0f4-45ea3aeecfb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_cea3cf88-cfef-4826-9414-9f00849daeb0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_80359ba2-574b-4dbc-a0f4-45ea3aeecfb2" xlink:to="loc_us-gaap_StatementTable_cea3cf88-cfef-4826-9414-9f00849daeb0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementEquityComponentsAxis_0c76194f-e901-457f-a6b3-b21bd3f44bb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_cea3cf88-cfef-4826-9414-9f00849daeb0" xlink:to="loc_us-gaap_StatementEquityComponentsAxis_0c76194f-e901-457f-a6b3-b21bd3f44bb1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementEquityComponentsAxis_0c76194f-e901-457f-a6b3-b21bd3f44bb1" xlink:to="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockMember_edc57fab-5cfb-4e17-9d1f-e529557fe461" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:to="loc_us-gaap_CommonStockMember_edc57fab-5cfb-4e17-9d1f-e529557fe461" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdditionalPaidInCapitalMember_c9eec18b-b096-4f21-b776-b5a3de067c3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdditionalPaidInCapitalMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:to="loc_us-gaap_AdditionalPaidInCapitalMember_c9eec18b-b096-4f21-b776-b5a3de067c3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetainedEarningsMember_1d78fb71-09db-466e-8a95-f44ebdf07911" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:to="loc_us-gaap_RetainedEarningsMember_1d78fb71-09db-466e-8a95-f44ebdf07911" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_eb6c277c-061c-4279-b2ce-812a70e97000" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EquityComponentDomain_30fa8b20-8162-43f9-af7a-b7327be41f8c" xlink:to="loc_us-gaap_AccumulatedOtherComprehensiveIncomeMember_eb6c277c-061c-4279-b2ce-812a70e97000" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_5753c889-9258-4b75-a862-aac2d23545ec" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_cea3cf88-cfef-4826-9414-9f00849daeb0" xlink:to="loc_us-gaap_StatementLineItems_5753c889-9258-4b75-a862-aac2d23545ec" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInStockholdersEquityRollForward"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_5753c889-9258-4b75-a862-aac2d23545ec" xlink:to="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_97714537-8228-4137-83f0-d0a6e51c5d28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_97714537-8228-4137-83f0-d0a6e51c5d28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_445f48b5-26bc-4f37-9c9e-8078897cfab3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_StockholdersEquity_445f48b5-26bc-4f37-9c9e-8078897cfab3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_f2a48345-11ee-490a-a53c-ee522dccf0ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_NetIncomeLoss_f2a48345-11ee-490a-a53c-ee522dccf0ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_d9f017be-3b12-4593-9fab-006d3ead5e93" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax_d9f017be-3b12-4593-9fab-006d3ead5e93" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_2f0cef8a-613a-434d-8f78-9e0396dfff6e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue_2f0cef8a-613a-434d-8f78-9e0396dfff6e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommonStockSharesOutstanding_a2b172e2-9653-4597-a865-9f44cafce935" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_CommonStockSharesOutstanding_a2b172e2-9653-4597-a865-9f44cafce935" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StockholdersEquity_f4941fbd-b8a0-41d3-89ae-e36cf78142c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward_1f33387d-69d3-4159-8f22-d55db23d5199" xlink:to="loc_us-gaap_StockholdersEquity_f4941fbd-b8a0-41d3-89ae-e36cf78142c3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquityParenthetical" xlink:type="simple" xlink:href="virc-20230430.xsd#UnauditedConsolidatedStatementsofChangesinStockholdersEquityParenthetical"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquityParenthetical" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementOfStockholdersEquityAbstract_c7dcc81c-55a2-40a1-92af-6214a5a98456" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax_5a9db7fc-1ec7-478c-b98f-d9fb58b3fa50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementOfStockholdersEquityAbstract_c7dcc81c-55a2-40a1-92af-6214a5a98456" xlink:to="loc_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax_5a9db7fc-1ec7-478c-b98f-d9fb58b3fa50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/BasisofPresentation" xlink:type="simple" xlink:href="virc-20230430.xsd#BasisofPresentation"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/BasisofPresentation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_a95aeab7-47f8-4b90-bf5f-c98d5ea0d58b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_26e4320b-e0f8-4598-a650-e92e80e63aff" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_a95aeab7-47f8-4b90-bf5f-c98d5ea0d58b" xlink:to="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock_26e4320b-e0f8-4598-a650-e92e80e63aff" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/SeasonalityandManagementUseofEstimates" xlink:type="simple" xlink:href="virc-20230430.xsd#SeasonalityandManagementUseofEstimates"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/SeasonalityandManagementUseofEstimates" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_virc_SeasonalityAbstract_5e7b0f4d-164e-426f-b4dc-e0d285e7835e" xlink:href="virc-20230430.xsd#virc_SeasonalityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SeasonalityTextBlock_e33dbe31-5b2f-47db-a56e-cdbf323a5c3e" xlink:href="virc-20230430.xsd#virc_SeasonalityTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_virc_SeasonalityAbstract_5e7b0f4d-164e-426f-b4dc-e0d285e7835e" xlink:to="loc_virc_SeasonalityTextBlock_e33dbe31-5b2f-47db-a56e-cdbf323a5c3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/NewAccountingPronouncements" xlink:type="simple" xlink:href="virc-20230430.xsd#NewAccountingPronouncements"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/NewAccountingPronouncements" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_32ed4796-199c-4e1a-81b5-ce79acc34f9a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_f2e4de57-ec33-4b97-af4a-20456dad82ac" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract_32ed4796-199c-4e1a-81b5-ce79acc34f9a" xlink:to="loc_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock_f2e4de57-ec33-4b97-af4a-20456dad82ac" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/RevenueRecognition" xlink:type="simple" xlink:href="virc-20230430.xsd#RevenueRecognition"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/RevenueRecognition" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerAbstract_3e6249ef-484f-46dd-a2d9-993fa3877706" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_e16905ef-ea0a-47aa-9e98-9054417da9d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RevenueFromContractWithCustomerAbstract_3e6249ef-484f-46dd-a2d9-993fa3877706" xlink:to="loc_us-gaap_RevenueFromContractWithCustomerTextBlock_e16905ef-ea0a-47aa-9e98-9054417da9d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/Inventories" xlink:type="simple" xlink:href="virc-20230430.xsd#Inventories"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/Inventories" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_818bfece-fe4b-49e1-a643-6d2e259db928" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureTextBlock_6b40c57f-4c7b-4f47-a3b1-4656c4349309" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_818bfece-fe4b-49e1-a643-6d2e259db928" xlink:to="loc_us-gaap_InventoryDisclosureTextBlock_6b40c57f-4c7b-4f47-a3b1-4656c4349309" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/Leases" xlink:type="simple" xlink:href="virc-20230430.xsd#Leases"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/Leases" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_c3a6d56e-a42a-442b-8631-95826f00aeb2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeasesTextBlock_202d9b9f-ff87-4265-b1bd-f06241201b3e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeasesTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_c3a6d56e-a42a-442b-8631-95826f00aeb2" xlink:to="loc_us-gaap_LesseeOperatingLeasesTextBlock_202d9b9f-ff87-4265-b1bd-f06241201b3e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/Debt" xlink:type="simple" xlink:href="virc-20230430.xsd#Debt"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/Debt" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_d3e50e6c-70a9-4199-afe9-dc6ee799bc3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureTextBlock_72fb881f-0059-4e09-90db-4a687d4add96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_d3e50e6c-70a9-4199-afe9-dc6ee799bc3f" xlink:to="loc_us-gaap_DebtDisclosureTextBlock_72fb881f-0059-4e09-90db-4a687d4add96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/IncomeTaxes" xlink:type="simple" xlink:href="virc-20230430.xsd#IncomeTaxes"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/IncomeTaxes" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_4b068343-1273-410a-8cfb-8aed0d228e10" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureTextBlock_de896f22-ee70-4bb2-9711-75a6f0ed2272" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_4b068343-1273-410a-8cfb-8aed0d228e10" xlink:to="loc_us-gaap_IncomeTaxDisclosureTextBlock_de896f22-ee70-4bb2-9711-75a6f0ed2272" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/NetlossperShare" xlink:type="simple" xlink:href="virc-20230430.xsd#NetlossperShare"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/NetlossperShare" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_56c71131-e890-45b9-8e99-816127f0f472" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareTextBlock_a3595489-660e-4626-a82f-a2a27a6f39b6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_56c71131-e890-45b9-8e99-816127f0f472" xlink:to="loc_us-gaap_EarningsPerShareTextBlock_a3595489-660e-4626-a82f-a2a27a6f39b6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/StockBasedCompensation" xlink:type="simple" xlink:href="virc-20230430.xsd#StockBasedCompensation"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/StockBasedCompensation" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_45e38dcd-8c58-466e-95a2-6d65f183a02d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_23b55c36-1460-4554-9dab-a878c57c06f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_45e38dcd-8c58-466e-95a2-6d65f183a02d" xlink:to="loc_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock_23b55c36-1460-4554-9dab-a878c57c06f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/RetirementPlans" xlink:type="simple" xlink:href="virc-20230430.xsd#RetirementPlans"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/RetirementPlans" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_c44d0b1b-95b0-4bb6-bd3a-8e4836cf43e1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PostemploymentBenefitsDisclosureTextBlock_245e9c97-f5e2-4988-b935-b2ffd5b613aa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PostemploymentBenefitsDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_c44d0b1b-95b0-4bb6-bd3a-8e4836cf43e1" xlink:to="loc_us-gaap_PostemploymentBenefitsDisclosureTextBlock_245e9c97-f5e2-4988-b935-b2ffd5b613aa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/WarrantyAccrual" xlink:type="simple" xlink:href="virc-20230430.xsd#WarrantyAccrual"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/WarrantyAccrual" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_50ae42af-15d5-4921-8c11-2791c182b1cf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyDisclosureTextBlock_e69a0e81-c9c9-4c34-8153-76794b7a16c6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyDisclosureTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_50ae42af-15d5-4921-8c11-2791c182b1cf" xlink:to="loc_us-gaap_ProductWarrantyDisclosureTextBlock_e69a0e81-c9c9-4c34-8153-76794b7a16c6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/Contingencies" xlink:type="simple" xlink:href="virc-20230430.xsd#Contingencies"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/Contingencies" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_24830e49-c98e-4c7f-aed6-58b064528702" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingencyDisclosures_6c1cd318-5d70-45e8-8b9d-95cba4c17a15" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LossContingencyDisclosures"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_24830e49-c98e-4c7f-aed6-58b064528702" xlink:to="loc_us-gaap_LossContingencyDisclosures_6c1cd318-5d70-45e8-8b9d-95cba4c17a15" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/DeliveryCosts" xlink:type="simple" xlink:href="virc-20230430.xsd#DeliveryCosts"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/DeliveryCosts" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndExpensesAbstract_d8bda49b-1e1f-4727-936c-911803a69c41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndExpensesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DeliveryCostsTextBlock_0f5410ed-7533-4995-b0af-b38047ca76f5" xlink:href="virc-20230430.xsd#virc_DeliveryCostsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract_d8bda49b-1e1f-4727-936c-911803a69c41" xlink:to="loc_virc_DeliveryCostsTextBlock_0f5410ed-7533-4995-b0af-b38047ca76f5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/SubsequentEvents" xlink:type="simple" xlink:href="virc-20230430.xsd#SubsequentEvents"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/SubsequentEvents" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsAbstract_e118bf2a-162c-4f11-ab00-0e880fc10880" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventsTextBlock_02258a86-855a-41a8-a922-c95b11d05706" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventsAbstract_e118bf2a-162c-4f11-ab00-0e880fc10880" xlink:to="loc_us-gaap_SubsequentEventsTextBlock_02258a86-855a-41a8-a922-c95b11d05706" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/InventoriesTables" xlink:type="simple" xlink:href="virc-20230430.xsd#InventoriesTables"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/InventoriesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_11ada5c6-169e-4680-bcc4-21fd3d67a7ba" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_2e12dbd3-a7b2-4e7d-851c-44cb3c91d0f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_11ada5c6-169e-4680-bcc4-21fd3d67a7ba" xlink:to="loc_us-gaap_ScheduleOfInventoryCurrentTableTextBlock_2e12dbd3-a7b2-4e7d-851c-44cb3c91d0f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/LeasesTables" xlink:type="simple" xlink:href="virc-20230430.xsd#LeasesTables"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/LeasesTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_7dbe5523-d6e7-485f-b0e5-4b22a66a1854" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCostTableTextBlock_feec4271-1106-44fe-9da1-c4e8cd3d4639" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCostTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7dbe5523-d6e7-485f-b0e5-4b22a66a1854" xlink:to="loc_us-gaap_LeaseCostTableTextBlock_feec4271-1106-44fe-9da1-c4e8cd3d4639" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_24f521fd-18f1-483d-aadc-9b16b1de6f43" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7dbe5523-d6e7-485f-b0e5-4b22a66a1854" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock_24f521fd-18f1-483d-aadc-9b16b1de6f43" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/DebtTables" xlink:type="simple" xlink:href="virc-20230430.xsd#DebtTables"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/DebtTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_1b21334e-017e-4349-a0cf-adcee72f8309" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock_517ebbaa-9fa7-4ee0-8809-81d928c79d36" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtInstrumentsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_1b21334e-017e-4349-a0cf-adcee72f8309" xlink:to="loc_us-gaap_ScheduleOfDebtInstrumentsTextBlock_517ebbaa-9fa7-4ee0-8809-81d928c79d36" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/NetincomelossperShareTables" xlink:type="simple" xlink:href="virc-20230430.xsd#NetincomelossperShareTables"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/NetincomelossperShareTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_1e7a7da6-adf8-445b-977e-524d7794e9e0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_fdd44b56-c3da-4d00-a574-87ef5fc8b2b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_1e7a7da6-adf8-445b-977e-524d7794e9e0" xlink:to="loc_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock_fdd44b56-c3da-4d00-a574-87ef5fc8b2b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/StockBasedCompensationTables" xlink:type="simple" xlink:href="virc-20230430.xsd#StockBasedCompensationTables"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/StockBasedCompensationTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_a8f9246f-d7b8-4b8f-9674-011af4f8ba41" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_bc9546b0-2193-4b12-928c-d55ad0a11d73" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_a8f9246f-d7b8-4b8f-9674-011af4f8ba41" xlink:to="loc_us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock_bc9546b0-2193-4b12-928c-d55ad0a11d73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/RetirementPlansTables" xlink:type="simple" xlink:href="virc-20230430.xsd#RetirementPlansTables"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/RetirementPlansTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_05eec16d-84ff-4bf8-990c-75fd64fb23b1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_978d5e6d-8782-4e3c-a18a-09e2040505e4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_05eec16d-84ff-4bf8-990c-75fd64fb23b1" xlink:to="loc_us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock_978d5e6d-8782-4e3c-a18a-09e2040505e4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/WarrantyAccrualTables" xlink:type="simple" xlink:href="virc-20230430.xsd#WarrantyAccrualTables"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/WarrantyAccrualTables" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_603a1207-7814-4455-b235-2857b6539a4f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_46c20bcb-f66c-4793-a20f-a2f4f857f207" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_603a1207-7814-4455-b235-2857b6539a4f" xlink:to="loc_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock_46c20bcb-f66c-4793-a20f-a2f4f857f207" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/BasisofPresentationDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#BasisofPresentationDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/BasisofPresentationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_e486e39e-b07b-4c63-bc70-162221520005" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementTable_041c6351-8ce6-4b10-96ec-83fd8c16edc2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract_e486e39e-b07b-4c63-bc70-162221520005" xlink:to="loc_us-gaap_StatementTable_041c6351-8ce6-4b10-96ec-83fd8c16edc2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_c270ffc3-1862-4c75-865a-7a025ca527a9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_041c6351-8ce6-4b10-96ec-83fd8c16edc2" xlink:to="loc_srt_RangeAxis_c270ffc3-1862-4c75-865a-7a025ca527a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_e9ca698d-7ebc-4f35-977f-96822fdc9064" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_c270ffc3-1862-4c75-865a-7a025ca527a9" xlink:to="loc_srt_RangeMember_e9ca698d-7ebc-4f35-977f-96822fdc9064" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6391fc86-b3e5-48ab-8765-c1843f225b68" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_e9ca698d-7ebc-4f35-977f-96822fdc9064" xlink:to="loc_srt_MaximumMember_6391fc86-b3e5-48ab-8765-c1843f225b68" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_StatementLineItems_e490bc9c-3b60-4151-a9f4-2cad6840c7c7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementTable_041c6351-8ce6-4b10-96ec-83fd8c16edc2" xlink:to="loc_us-gaap_StatementLineItems_e490bc9c-3b60-4151-a9f4-2cad6840c7c7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_f0194b25-f0a2-4149-bf3d-4598ea015b12" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_StatementLineItems_e490bc9c-3b60-4151-a9f4-2cad6840c7c7" xlink:to="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_f0194b25-f0a2-4149-bf3d-4598ea015b12" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/SeasonalityDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#SeasonalityDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/SeasonalityDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_virc_SeasonalityAbstract_fa4dd339-3169-439a-9e14-5a8726f62edd" xlink:href="virc-20230430.xsd#virc_SeasonalityAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_7fb31d9c-0131-4fd3-b007-3e94f07285a2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfRestructuringAndRelatedCostsTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_virc_SeasonalityAbstract_fa4dd339-3169-439a-9e14-5a8726f62edd" xlink:to="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_7fb31d9c-0131-4fd3-b007-3e94f07285a2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_7fb31d9c-0131-4fd3-b007-3e94f07285a2" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_16d98e6f-366d-4a15-bda9-5e5b3a596230" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_49a7ec5c-6f16-4a8f-ba27-8d2880c5d87d" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_16d98e6f-366d-4a15-bda9-5e5b3a596230" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SalesMember_d01c7be8-c989-46e6-b927-a4ec6a3b70d8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_16d98e6f-366d-4a15-bda9-5e5b3a596230" xlink:to="loc_us-gaap_SalesMember_d01c7be8-c989-46e6-b927-a4ec6a3b70d8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestructuringCostAndReserveLineItems_67027bd1-9745-4ae2-b2e8-f8439fa64ff3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestructuringCostAndReserveLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfRestructuringAndRelatedCostsTable_7fb31d9c-0131-4fd3-b007-3e94f07285a2" xlink:to="loc_us-gaap_RestructuringCostAndReserveLineItems_67027bd1-9745-4ae2-b2e8-f8439fa64ff3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SeasonalityTextualAbstract_4d915bd1-5eb0-46fe-bd11-1ef6bc4cc708" xlink:href="virc-20230430.xsd#virc_SeasonalityTextualAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RestructuringCostAndReserveLineItems_67027bd1-9745-4ae2-b2e8-f8439fa64ff3" xlink:to="loc_virc_SeasonalityTextualAbstract_4d915bd1-5eb0-46fe-bd11-1ef6bc4cc708" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ExtremeSeasonalityGoods_70763f57-35cb-44e4-a0f9-64192645d580" xlink:href="virc-20230430.xsd#virc_ExtremeSeasonalityGoods"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_virc_SeasonalityTextualAbstract_4d915bd1-5eb0-46fe-bd11-1ef6bc4cc708" xlink:to="loc_virc_ExtremeSeasonalityGoods_70763f57-35cb-44e4-a0f9-64192645d580" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/InventoriesDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#InventoriesDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/InventoriesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryDisclosureAbstract_c60bf97e-0bd4-470b-b08e-47e8072deafa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseInInventories_f276af28-d35c-4b70-9bb1-783e2a7c677f" xlink:href="virc-20230430.xsd#virc_IncreaseInInventories"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_c60bf97e-0bd4-470b-b08e-47e8072deafa" xlink:to="loc_virc_IncreaseInInventories_f276af28-d35c-4b70-9bb1-783e2a7c677f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_0e9d422c-8ecb-427a-bb47-5d1e5bafd14a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_c60bf97e-0bd4-470b-b08e-47e8072deafa" xlink:to="loc_us-gaap_InventoryFinishedGoodsNetOfReserves_0e9d422c-8ecb-427a-bb47-5d1e5bafd14a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryWorkInProcessNetOfReserves_78862480-c6ee-404a-adae-9f61310e1dad" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_c60bf97e-0bd4-470b-b08e-47e8072deafa" xlink:to="loc_us-gaap_InventoryWorkInProcessNetOfReserves_78862480-c6ee-404a-adae-9f61310e1dad" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryRawMaterialsNetOfReserves_1cdf7a15-05fe-4218-8a3c-347b8d2b872b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_c60bf97e-0bd4-470b-b08e-47e8072deafa" xlink:to="loc_us-gaap_InventoryRawMaterialsNetOfReserves_1cdf7a15-05fe-4218-8a3c-347b8d2b872b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoryNet_9b24d504-8158-4581-b247-2cf82e553388" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_InventoryDisclosureAbstract_c60bf97e-0bd4-470b-b08e-47e8072deafa" xlink:to="loc_us-gaap_InventoryNet_9b24d504-8158-4581-b247-2cf82e553388" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#LeasesASC842QuantitativeInformationDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseCost_499196ea-b51d-46e8-8ff7-42060a18fb62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseCost"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_OperatingLeaseCost_499196ea-b51d-46e8-8ff7-42060a18fb62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShortTermLeaseCost_e682c0ac-b37d-4a4e-aa44-df2a4418607c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShortTermLeaseCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_ShortTermLeaseCost_e682c0ac-b37d-4a4e-aa44-df2a4418607c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubleaseIncome_6ad717aa-e403-417c-92e2-a9348f5f7b0d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubleaseIncome"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_SubleaseIncome_6ad717aa-e403-417c-92e2-a9348f5f7b0d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_VariableLeaseCost_56c9914a-af2c-4265-9f4a-4fa95adce6ea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableLeaseCost"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_VariableLeaseCost_56c9914a-af2c-4265-9f4a-4fa95adce6ea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeaseCost_f514ac6b-dca2-4b32-bb40-bda3fd53aab6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseCost"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_LeaseCost_f514ac6b-dca2-4b32-bb40-bda3fd53aab6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PaymentsForRent_578c8bcc-5e84-4082-bd2a-cade0f14610c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsForRent"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_PaymentsForRent_578c8bcc-5e84-4082-bd2a-cade0f14610c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CapitalLeaseObligationsIncurred_9496c2d4-20e0-45c0-8517-1fb643b15a37" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CapitalLeaseObligationsIncurred"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_CapitalLeaseObligationsIncurred_9496c2d4-20e0-45c0-8517-1fb643b15a37" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_6bb58136-1fea-4e26-b3e1-9fcb5a5c0af6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1_6bb58136-1fea-4e26-b3e1-9fcb5a5c0af6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_df36572a-79fa-4267-9dc3-7fb29d3ed860" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_ce8adcd8-a64d-49c2-be1f-e19d742ce733" xlink:to="loc_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent_df36572a-79fa-4267-9dc3-7fb29d3ed860" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#LeasesASC842MinimumLeasePaymentsDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeasesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_55d4bab0-4857-418d-a772-0dafdfc62563" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear_55d4bab0-4857-418d-a772-0dafdfc62563" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_4ebbf811-1212-4af8-8bfa-9922afd3f8f6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths_4ebbf811-1212-4af8-8bfa-9922afd3f8f6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_b730700c-b01b-45fd-a82d-a96b62c5d7dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo_b730700c-b01b-45fd-a82d-a96b62c5d7dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_6674d129-f213-461f-8e32-1f91ab7b6c6f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree_6674d129-f213-461f-8e32-1f91ab7b6c6f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_99a9239b-dbdc-4878-97b7-9e13e0dea2d7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour_99a9239b-dbdc-4878-97b7-9e13e0dea2d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_1bbbf906-433a-4ac1-afcc-d83d1b109c82" xlink:href="virc-20230430.xsd#virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour_1bbbf906-433a-4ac1-afcc-d83d1b109c82" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_4ac66ccf-f58f-4b8e-a829-6e03e11c71dd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue_4ac66ccf-f58f-4b8e-a829-6e03e11c71dd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityCurrent_7dc66b1c-2a6a-4bab-8837-711d2791a418" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_OperatingLeaseLiabilityCurrent_7dc66b1c-2a6a-4bab-8837-711d2791a418" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_5f325a1f-9642-4cc1-a8a6-7c21847ff158" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_OperatingLeaseLiabilityNoncurrent_5f325a1f-9642-4cc1-a8a6-7c21847ff158" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OperatingLeaseLiability_25f31f60-1dd0-4964-8503-0b9ddef642c0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_OperatingLeaseLiability_25f31f60-1dd0-4964-8503-0b9ddef642c0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_d4769795-6f1b-4b0c-b730-4f6ac7e7a8a9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LeasesAbstract_7397b3dd-9c7d-49b5-922e-8fab66950fb7" xlink:to="loc_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount_d4769795-6f1b-4b0c-b730-4f6ac7e7a8a9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1" xlink:type="simple" xlink:href="virc-20230430.xsd#LeasesASC842MinimumLeasePaymentsDetails_1"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1" xlink:type="extended"/>
  <link:roleRef roleURI="http://www.virco.com/role/DebtLongtermDebtDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#DebtLongtermDebtDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/DebtLongtermDebtDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_49bc8410-8ba2-4f43-afa8-b7040754b6bf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTable_a37b4f50-b728-49b7-b97e-dd9e3ec38d6d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_49bc8410-8ba2-4f43-afa8-b7040754b6bf" xlink:to="loc_us-gaap_DebtInstrumentTable_a37b4f50-b728-49b7-b97e-dd9e3ec38d6d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_11f7631c-fd7a-47f9-9a64-7c7626ba74f4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_a37b4f50-b728-49b7-b97e-dd9e3ec38d6d" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_11f7631c-fd7a-47f9-9a64-7c7626ba74f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_ff7926e6-7f6e-4094-b87c-142b4e9f3579" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_11f7631c-fd7a-47f9-9a64-7c7626ba74f4" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_ff7926e6-7f6e-4094-b87c-142b4e9f3579" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_5f206907-6232-4b00-88c8-2f20ab7e70ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_ff7926e6-7f6e-4094-b87c-142b4e9f3579" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_5f206907-6232-4b00-88c8-2f20ab7e70ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_OtherDebtMember_9f54c335-0bbd-4cc1-bd14-2962aacd532c" xlink:href="virc-20230430.xsd#virc_OtherDebtMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_ff7926e6-7f6e-4094-b87c-142b4e9f3579" xlink:to="loc_virc_OtherDebtMember_9f54c335-0bbd-4cc1-bd14-2962aacd532c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentTable_a37b4f50-b728-49b7-b97e-dd9e3ec38d6d" xlink:to="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_738d4b81-2c32-48ee-b3e7-5428a0b0aa22" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:to="loc_us-gaap_LongTermDebt_738d4b81-2c32-48ee-b3e7-5428a0b0aa22" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtCurrent_92cbab40-06ef-4ae6-a213-0a83cfc58e2d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:to="loc_us-gaap_LongTermDebtCurrent_92cbab40-06ef-4ae6-a213-0a83cfc58e2d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebtNoncurrent_0ad2947d-d923-4426-93e8-2849964f8b96" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentLineItems_ee0af865-d2cd-4a95-a3c3-cfb4fd57cefd" xlink:to="loc_us-gaap_LongTermDebtNoncurrent_0ad2947d-d923-4426-93e8-2849964f8b96" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/DebtNarrativeDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#DebtNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/DebtNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtDisclosureAbstract_1f7c99e1-9c89-42b4-807a-8dd3bc11aadb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtDisclosureAbstract_1f7c99e1-9c89-42b4-807a-8dd3bc11aadb" xlink:to="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradingActivityByTypeAxis_6de78551-aa44-4265-82b3-16f964b76f3f" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_TradingActivityByTypeAxis_6de78551-aa44-4265-82b3-16f964b76f3f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_TradingActivityByTypeDomain_30a9e575-48bc-4b45-a2a1-9129c0190d1d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TradingActivityByTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TradingActivityByTypeAxis_6de78551-aa44-4265-82b3-16f964b76f3f" xlink:to="loc_us-gaap_TradingActivityByTypeDomain_30a9e575-48bc-4b45-a2a1-9129c0190d1d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AlternateBaseRateLoansMember_4ba85748-7b03-42b8-822c-2c1941e7a6b3" xlink:href="virc-20230430.xsd#virc_AlternateBaseRateLoansMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_TradingActivityByTypeDomain_30a9e575-48bc-4b45-a2a1-9129c0190d1d" xlink:to="loc_virc_AlternateBaseRateLoansMember_4ba85748-7b03-42b8-822c-2c1941e7a6b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityAxis_ed901901-719f-4ad5-9dd1-3e8e430ccacc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_LineOfCreditFacilityAxis_ed901901-719f-4ad5-9dd1-3e8e430ccacc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLenderDomain_24ff7f9d-ddce-4800-980b-fbb8302fd029" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityAxis_ed901901-719f-4ad5-9dd1-3e8e430ccacc" xlink:to="loc_us-gaap_LineOfCreditFacilityLenderDomain_24ff7f9d-ddce-4800-980b-fbb8302fd029" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_PNCMember_498b651d-78e4-4759-a2d5-998f58d395be" xlink:href="virc-20230430.xsd#virc_PNCMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLenderDomain_24ff7f9d-ddce-4800-980b-fbb8302fd029" xlink:to="loc_virc_PNCMember_498b651d-78e4-4759-a2d5-998f58d395be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityAxis_5496ce16-1f13-43d7-9fcb-23245ae73813" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_CreditFacilityAxis_5496ce16-1f13-43d7-9fcb-23245ae73813" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CreditFacilityDomain_b6273b99-5465-4573-87bc-eaaef91a0fbb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityAxis_5496ce16-1f13-43d7-9fcb-23245ae73813" xlink:to="loc_us-gaap_CreditFacilityDomain_b6273b99-5465-4573-87bc-eaaef91a0fbb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_8214b6ca-b1e9-4cdf-84de-d1c5c38211b3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_b6273b99-5465-4573-87bc-eaaef91a0fbb" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_8214b6ca-b1e9-4cdf-84de-d1c5c38211b3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_EquipmentLoanMember_b41a92fb-04f7-4871-951d-03a79ed65f21" xlink:href="virc-20230430.xsd#virc_EquipmentLoanMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CreditFacilityDomain_b6273b99-5465-4573-87bc-eaaef91a0fbb" xlink:to="loc_virc_EquipmentLoanMember_b41a92fb-04f7-4871-951d-03a79ed65f21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentAxis_bd424aa5-f55a-47f2-9c27-8e41523c73b4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentAxis"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_DebtInstrumentAxis_bd424aa5-f55a-47f2-9c27-8e41523c73b4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentNameDomain_b7d95f35-54e8-4d48-856f-54c77139f96d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentAxis_bd424aa5-f55a-47f2-9c27-8e41523c73b4" xlink:to="loc_us-gaap_DebtInstrumentNameDomain_b7d95f35-54e8-4d48-856f-54c77139f96d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AmendedAndRestatedCreditAgreementMember_447f61c0-5e4b-4927-bbf0-dac17a6bda65" xlink:href="virc-20230430.xsd#virc_AmendedAndRestatedCreditAgreementMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DebtInstrumentNameDomain_b7d95f35-54e8-4d48-856f-54c77139f96d" xlink:to="loc_virc_AmendedAndRestatedCreditAgreementMember_447f61c0-5e4b-4927-bbf0-dac17a6bda65" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_5c838cf1-0921-412d-bbda-f710f9883d38" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_srt_RangeAxis_5c838cf1-0921-412d-bbda-f710f9883d38" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_650704f6-c4bf-4189-993a-52e24d670a58" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_5c838cf1-0921-412d-bbda-f710f9883d38" xlink:to="loc_srt_RangeMember_650704f6-c4bf-4189-993a-52e24d670a58" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_6cedc622-06c7-492b-8594-932cdb6cf4a5" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_650704f6-c4bf-4189-993a-52e24d670a58" xlink:to="loc_srt_MaximumMember_6cedc622-06c7-492b-8594-932cdb6cf4a5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MinimumMember_cd36f31c-0ea4-4441-a36c-270d05b3f851" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MinimumMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_650704f6-c4bf-4189-993a-52e24d670a58" xlink:to="loc_srt_MinimumMember_cd36f31c-0ea4-4441-a36c-270d05b3f851" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskByBenchmarkAxis_7dd3c020-cc5b-4c24-833d-1c9d8dc58de6" xlink:to="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AccountsReceivableMember_d32e4b27-425c-4f37-af8d-89008ce32bc8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:to="loc_us-gaap_AccountsReceivableMember_d32e4b27-425c-4f37-af8d-89008ce32bc8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_InventoryMember_5d7f735b-af4f-4a51-8488-9999fa0267d7" xlink:href="virc-20230430.xsd#virc_InventoryMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:to="loc_virc_InventoryMember_5d7f735b-af4f-4a51-8488-9999fa0267d7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_InventoriesMember_6af7f6cd-615e-4c6e-991b-3ac7035c45b5" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoriesMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ConcentrationRiskBenchmarkDomain_90b9feb2-ee17-4287-9a7f-2d20d49a081c" xlink:to="loc_us-gaap_InventoriesMember_6af7f6cd-615e-4c6e-991b-3ac7035c45b5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantPeriodAxis_44429b32-e9d4-4b40-b3c7-970759ae329f" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantPeriodAxis"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_virc_DebtInstrumentCovenantPeriodAxis_44429b32-e9d4-4b40-b3c7-970759ae329f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantPeriodDomain_14ded696-b5c4-4eee-9953-76c11c411b9a" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantPeriodDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_virc_DebtInstrumentCovenantPeriodAxis_44429b32-e9d4-4b40-b3c7-970759ae329f" xlink:to="loc_virc_DebtInstrumentCovenantPeriodDomain_14ded696-b5c4-4eee-9953-76c11c411b9a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_CovenantPeriod1Member_ad051843-6743-443d-8d10-cdb388ccce7f" xlink:href="virc-20230430.xsd#virc_CovenantPeriod1Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_virc_DebtInstrumentCovenantPeriodDomain_14ded696-b5c4-4eee-9953-76c11c411b9a" xlink:to="loc_virc_CovenantPeriod1Member_ad051843-6743-443d-8d10-cdb388ccce7f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeAxis_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_LongtermDebtTypeAxis_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongtermDebtTypeDomain_1f1a1627-ced6-41f1-897d-db86d0e93a16" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeAxis_8c7de0c9-b73f-4f23-a587-8c48ff1dbc62" xlink:to="loc_us-gaap_LongtermDebtTypeDomain_1f1a1627-ced6-41f1-897d-db86d0e93a16" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RevolvingCreditFacilityMember_5c633e07-ed2d-4cb3-bae7-0e6882641369" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_1f1a1627-ced6-41f1-897d-db86d0e93a16" xlink:to="loc_us-gaap_RevolvingCreditFacilityMember_5c633e07-ed2d-4cb3-bae7-0e6882641369" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MortgagesMember_49dbcb81-0ee0-46ab-a071-82b781989376" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MortgagesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LongtermDebtTypeDomain_1f1a1627-ced6-41f1-897d-db86d0e93a16" xlink:to="loc_us-gaap_MortgagesMember_49dbcb81-0ee0-46ab-a071-82b781989376" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeAxis_0c130af8-f0ac-45cf-ab0a-4a45220fc519" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeAxis"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_SubsequentEventTypeAxis_0c130af8-f0ac-45cf-ab0a-4a45220fc519" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventTypeDomain_8580b620-53d1-4f7c-82b0-68182b9764d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeAxis_0c130af8-f0ac-45cf-ab0a-4a45220fc519" xlink:to="loc_us-gaap_SubsequentEventTypeDomain_8580b620-53d1-4f7c-82b0-68182b9764d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SubsequentEventMember_e12e5095-c714-4fb7-8343-2238d1a2007d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SubsequentEventMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_SubsequentEventTypeDomain_8580b620-53d1-4f7c-82b0-68182b9764d2" xlink:to="loc_us-gaap_SubsequentEventMember_e12e5095-c714-4fb7-8343-2238d1a2007d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLineItems"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityTable_c3c19a3e-a1a3-49fd-b369-19e69d10f30c" xlink:to="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DividendPayableMaximumAmountInFiscalYear_9cc1d058-5d83-4dcb-8fc7-823619f6ca76" xlink:href="virc-20230430.xsd#virc_DividendPayableMaximumAmountInFiscalYear"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_DividendPayableMaximumAmountInFiscalYear_9cc1d058-5d83-4dcb-8fc7-823619f6ca76" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_8d9bc7dc-0d12-47de-90f6-34769fb88dd5" xlink:href="virc-20230430.xsd#virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio_8d9bc7dc-0d12-47de-90f6-34769fb88dd5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_6c96bdd6-4cf6-45c7-9e4d-f093c6cb1c7b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity_6c96bdd6-4cf6-45c7-9e4d-f093c6cb1c7b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineOfCreditFacilityBorrowingBaseLimitation_376fc68e-f01f-4e6b-9c01-39e9c3ff8d7d" xlink:href="virc-20230430.xsd#virc_LineOfCreditFacilityBorrowingBaseLimitation"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_LineOfCreditFacilityBorrowingBaseLimitation_376fc68e-f01f-4e6b-9c01-39e9c3ff8d7d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineOfCreditFacilityBorrowingCapacityTerm_39e1497d-0ee5-4e47-bd60-3af6409781d5" xlink:href="virc-20230430.xsd#virc_LineOfCreditFacilityBorrowingCapacityTerm"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_LineOfCreditFacilityBorrowingCapacityTerm_39e1497d-0ee5-4e47-bd60-3af6409781d5" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear_ec2dccec-083f-4898-9668-880850964aa3" xlink:href="virc-20230430.xsd#virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear_ec2dccec-083f-4898-9668-880850964aa3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_CreditAgreementAmendmentFee_62f91de9-f530-4ff7-8784-212c82f34a21" xlink:href="virc-20230430.xsd#virc_CreditAgreementAmendmentFee"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_CreditAgreementAmendmentFee_62f91de9-f530-4ff7-8784-212c82f34a21" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_b51f2473-7889-469c-bf2f-3482551b1cea" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity_b51f2473-7889-469c-bf2f-3482551b1cea" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_a07da1ff-c6a5-448b-b428-584098e86142" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage"/>
    <link:presentationArc order="9" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_DebtInstrumentInterestRateStatedPercentage_a07da1ff-c6a5-448b-b428-584098e86142" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_caa4e67e-9aff-4b5b-b8fa-184556a7a69d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage"/>
    <link:presentationArc order="10" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage_caa4e67e-9aff-4b5b-b8fa-184556a7a69d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LongTermDebt_0c05604f-ee74-432d-9a2d-f76bd48f5e70" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt"/>
    <link:presentationArc order="11" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LongTermDebt_0c05604f-ee74-432d-9a2d-f76bd48f5e70" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFaceAmount_17f2a9cb-7946-4fc0-bf5e-a5f9bd221f45" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount"/>
    <link:presentationArc order="12" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_DebtInstrumentFaceAmount_17f2a9cb-7946-4fc0-bf5e-a5f9bd221f45" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentTerm_0970d38f-9635-4015-9ecf-529d14aa2b50" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentTerm"/>
    <link:presentationArc order="13" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_DebtInstrumentTerm_0970d38f-9635-4015-9ecf-529d14aa2b50" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet_7568591d-ddf0-4ee4-99a3-0bc043abf6d0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet"/>
    <link:presentationArc order="14" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet_7568591d-ddf0-4ee4-99a3-0bc043abf6d0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement_f71306b8-c653-4f8d-9359-fbd6b7ce8b5a" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement"/>
    <link:presentationArc order="15" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement_f71306b8-c653-4f8d-9359-fbd6b7ce8b5a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement_f6a8737b-ae81-4d73-b3cb-fbecb6869b60" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement"/>
    <link:presentationArc order="16" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement_f6a8737b-ae81-4d73-b3cb-fbecb6869b60" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncrementalCreditLineIncreaseDecreasePercentage_4039d94f-b33e-4352-bf25-7eac3c2c3c6c" xlink:href="virc-20230430.xsd#virc_IncrementalCreditLineIncreaseDecreasePercentage"/>
    <link:presentationArc order="17" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncrementalCreditLineIncreaseDecreasePercentage_4039d94f-b33e-4352-bf25-7eac3c2c3c6c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncreaseDecreaseApplicableMarginBasisPoints_a33edf3f-9e9e-4ef9-a2be-1eaaecd84f99" xlink:href="virc-20230430.xsd#virc_IncreaseDecreaseApplicableMarginBasisPoints"/>
    <link:presentationArc order="18" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncreaseDecreaseApplicableMarginBasisPoints_a33edf3f-9e9e-4ef9-a2be-1eaaecd84f99" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncrementalCreditLineIncreaseDecrease_6755e1d6-828b-449a-bbdd-160474090240" xlink:href="virc-20230430.xsd#virc_IncrementalCreditLineIncreaseDecrease"/>
    <link:presentationArc order="19" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_virc_IncrementalCreditLineIncreaseDecrease_6755e1d6-828b-449a-bbdd-160474090240" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DebtInstrumentFeeAmount_0414362d-3957-47ac-a0d5-8da719ac08ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFeeAmount"/>
    <link:presentationArc order="20" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_DebtInstrumentFeeAmount_0414362d-3957-47ac-a0d5-8da719ac08ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases_0bc1b149-2782-4ccc-9c07-8480c22f895a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases"/>
    <link:presentationArc order="21" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LineOfCreditFacilityLineItems_03331380-31ee-46c7-9995-8e977c18a48c" xlink:to="loc_us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases_0bc1b149-2782-4ccc-9c07-8480c22f895a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/IncomeTaxesDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#IncomeTaxesDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/IncomeTaxesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeTaxDisclosureAbstract_eacbdb3a-902e-4cd8-955f-ac8f2d1ecdb1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DeferredTaxAssetsValuationAllowance_c213c3ce-0fc2-4c7d-ba60-ce2e8be9ee73" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DeferredTaxAssetsValuationAllowance"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_eacbdb3a-902e-4cd8-955f-ac8f2d1ecdb1" xlink:to="loc_us-gaap_DeferredTaxAssetsValuationAllowance_c213c3ce-0fc2-4c7d-ba60-ce2e8be9ee73" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a2e475e3-be97-499b-baa8-747a6df375f8" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EffectiveIncomeTaxRateContinuingOperations"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeTaxDisclosureAbstract_eacbdb3a-902e-4cd8-955f-ac8f2d1ecdb1" xlink:to="loc_us-gaap_EffectiveIncomeTaxRateContinuingOperations_a2e475e3-be97-499b-baa8-747a6df375f8" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/NetincomelossperShareDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#NetincomelossperShareDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/NetincomelossperShareDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareAbstract_69263a1c-b48c-4925-938f-80f2ee7539c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_NetIncomeLoss_850a3281-dabc-4e88-953a-f058c8b3a692" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_69263a1c-b48c-4925-938f-80f2ee7539c1" xlink:to="loc_us-gaap_NetIncomeLoss_850a3281-dabc-4e88-953a-f058c8b3a692" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ae570ed4-bec2-45dc-8c1a-b9c2daccfb24" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_69263a1c-b48c-4925-938f-80f2ee7539c1" xlink:to="loc_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic_ae570ed4-bec2-45dc-8c1a-b9c2daccfb24" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_5b33bb5c-a572-4cd9-b5c4-12cec8f520a6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_69263a1c-b48c-4925-938f-80f2ee7539c1" xlink:to="loc_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment_5b33bb5c-a572-4cd9-b5c4-12cec8f520a6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_4bcf6b91-8f67-4437-b833-e8d24d0730e3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_69263a1c-b48c-4925-938f-80f2ee7539c1" xlink:to="loc_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding_4bcf6b91-8f67-4437-b833-e8d24d0730e3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareBasic_175131cb-c35c-4c85-b628-d855b19f6543" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_69263a1c-b48c-4925-938f-80f2ee7539c1" xlink:to="loc_us-gaap_EarningsPerShareBasic_175131cb-c35c-4c85-b628-d855b19f6543" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EarningsPerShareDiluted_4b14026f-318e-4f2e-bbe5-1883788be6fc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareDiluted"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_69263a1c-b48c-4925-938f-80f2ee7539c1" xlink:to="loc_us-gaap_EarningsPerShareDiluted_4b14026f-318e-4f2e-bbe5-1883788be6fc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_IncrementalCommonSharesExcludedToDilutiveEffect_27f4a40e-7614-4e14-a725-061521b72c75" xlink:href="virc-20230430.xsd#virc_IncrementalCommonSharesExcludedToDilutiveEffect"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_EarningsPerShareAbstract_69263a1c-b48c-4925-938f-80f2ee7539c1" xlink:to="loc_virc_IncrementalCommonSharesExcludedToDilutiveEffect_27f4a40e-7614-4e14-a725-061521b72c75" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/StockBasedCompensationDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#StockBasedCompensationDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/StockBasedCompensationDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_4d75ac62-dcc7-4cc7-b6d9-6507f75ca5c3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract_4d75ac62-dcc7-4cc7-b6d9-6507f75ca5c3" xlink:to="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_AwardTypeAxis_1c8bb424-2236-4d22-b3db-53ad2d7fafc1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:to="loc_us-gaap_AwardTypeAxis_1c8bb424-2236-4d22-b3db-53ad2d7fafc1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2b960f79-d058-4ead-b68a-2b36e031728b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_AwardTypeAxis_1c8bb424-2236-4d22-b3db-53ad2d7fafc1" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2b960f79-d058-4ead-b68a-2b36e031728b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RestrictedStockUnitsRSUMember_5a17e907-5397-4c24-b86d-cd70936f36d2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockUnitsRSUMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain_2b960f79-d058-4ead-b68a-2b36e031728b" xlink:to="loc_us-gaap_RestrictedStockUnitsRSUMember_5a17e907-5397-4c24-b86d-cd70936f36d2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameAxis_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:to="loc_us-gaap_PlanNameAxis_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PlanNameDomain_1e52db64-3955-4e53-9a4d-657f7063f9de" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameAxis_a8c98b2b-0582-49d9-8d94-3c94c4aeb95a" xlink:to="loc_us-gaap_PlanNameDomain_1e52db64-3955-4e53-9a4d-657f7063f9de" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_StockIncentivePlan2019Member_9c775617-9c41-4bbd-8dbd-d62419a69ab1" xlink:href="virc-20230430.xsd#virc_StockIncentivePlan2019Member"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_PlanNameDomain_1e52db64-3955-4e53-9a4d-657f7063f9de" xlink:to="loc_virc_StockIncentivePlan2019Member_9c775617-9c41-4bbd-8dbd-d62419a69ab1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationAxis_29e2426f-bb56-4131-a65f-dd493be1175e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationAxis"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:to="loc_us-gaap_IncomeStatementLocationAxis_29e2426f-bb56-4131-a65f-dd493be1175e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_IncomeStatementLocationDomain_7afe1f02-38ae-40bb-9cb1-22f7ba1a8c57" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationAxis_29e2426f-bb56-4131-a65f-dd493be1175e" xlink:to="loc_us-gaap_IncomeStatementLocationDomain_7afe1f02-38ae-40bb-9cb1-22f7ba1a8c57" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CostOfSalesMember_ddd8c1cb-3345-451e-b61f-ffe25a169f5d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfSalesMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_7afe1f02-38ae-40bb-9cb1-22f7ba1a8c57" xlink:to="loc_us-gaap_CostOfSalesMember_ddd8c1cb-3345-451e-b61f-ffe25a169f5d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_d3352922-e54e-45b4-bd08-9db832b9bde2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpensesMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_IncomeStatementLocationDomain_7afe1f02-38ae-40bb-9cb1-22f7ba1a8c57" xlink:to="loc_us-gaap_SellingGeneralAndAdministrativeExpensesMember_d3352922-e54e-45b4-bd08-9db832b9bde2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable_d5b05a45-989e-4a1c-8ed9-a3c7378f0984" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_ac62063e-19a9-4f86-98d9-fa3804373827" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized_ac62063e-19a9-4f86-98d9-fa3804373827" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_ad45ca9e-fa0c-4c7a-b4bb-663b5171fc72" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod_ad45ca9e-fa0c-4c7a-b4bb-663b5171fc72" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8a7e1172-3f1f-410f-871f-488f7cc97bfb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod_8a7e1172-3f1f-410f-871f-488f7cc97bfb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_51590c42-bff1-4a26-8e79-d5bf78388d1e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod_51590c42-bff1-4a26-8e79-d5bf78388d1e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_47821b72-856d-426d-942e-34586a7d6a86" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant_47821b72-856d-426d-942e-34586a7d6a86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_54518063-8d2a-47e7-b7c8-ffe2b283deb6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1_54518063-8d2a-47e7-b7c8-ffe2b283deb6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_48280157-fb28-4a22-9088-7cb453497b7e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized_48280157-fb28-4a22-9088-7cb453497b7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_7663add9-424d-49f4-b5fc-90db29ad7e80" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1"/>
    <link:presentationArc order="8" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems_786ef763-b5fb-47d5-b781-93c7f8f56daa" xlink:to="loc_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1_7663add9-424d-49f4-b5fc-90db29ad7e80" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#RetirementPlansPeriodicPensionCostDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_57187ec5-6263-49cb-b104-db3a51c84958" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_451c3dc5-27c8-4531-8090-d82dfd244ddf" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_57187ec5-6263-49cb-b104-db3a51c84958" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_451c3dc5-27c8-4531-8090-d82dfd244ddf" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_a3c116dd-a64d-460e-9a8e-6f75184049ed" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_451c3dc5-27c8-4531-8090-d82dfd244ddf" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_a3c116dd-a64d-460e-9a8e-6f75184049ed" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_dc3547c7-ef1c-4438-b6f1-f1c2c0ee73b0" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_a3c116dd-a64d-460e-9a8e-6f75184049ed" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_dc3547c7-ef1c-4438-b6f1-f1c2c0ee73b0" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_948f4292-101a-412a-a719-dbc90a9d1ace" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_dc3547c7-ef1c-4438-b6f1-f1c2c0ee73b0" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_948f4292-101a-412a-a719-dbc90a9d1ace" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_54fbe118-893a-40c1-b5a7-f5ac3bb09892" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_451c3dc5-27c8-4531-8090-d82dfd244ddf" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_54fbe118-893a-40c1-b5a7-f5ac3bb09892" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_54fbe118-893a-40c1-b5a7-f5ac3bb09892" xlink:to="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanServiceCost_8e62656d-1999-4fb5-a2c0-1c7e1ce6b7d6" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanServiceCost"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanServiceCost_8e62656d-1999-4fb5-a2c0-1c7e1ce6b7d6" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanInterestCost_edfb3236-0f0d-4241-88c0-dc1722af8271" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanInterestCost"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanInterestCost_edfb3236-0f0d-4241-88c0-dc1722af8271" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_ece3013f-816f-4aca-8f47-5f927e07cd56" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets_ece3013f-816f-4aca-8f47-5f927e07cd56" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement_81027ac7-3888-4618-add7-fa69c5a161bc" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement_81027ac7-3888-4618-add7-fa69c5a161bc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_41974837-9f2d-41a4-8bf7-35fd52a80ea2" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit_41974837-9f2d-41a4-8bf7-35fd52a80ea2" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_5f414818-bd90-47b3-a31e-0d356ccc212f" xlink:href="virc-20230430.xsd#virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss"/>
    <link:presentationArc order="6" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss_5f414818-bd90-47b3-a31e-0d356ccc212f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_4b4b940a-30db-40ba-8cf1-4d0ac73e9c1c" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost"/>
    <link:presentationArc order="7" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract_28dfd9c9-8eb6-48a3-b1f5-e408084615ca" xlink:to="loc_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost_4b4b940a-30db-40ba-8cf1-4d0ac73e9c1c" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/totalLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/RetirementPlansNarrativeDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#RetirementPlansNarrativeDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/RetirementPlansNarrativeDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_9bf19cc6-1180-4281-9094-09d8899d107a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CompensationAndRetirementDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CompensationAndRetirementDisclosureAbstract_9bf19cc6-1180-4281-9094-09d8899d107a" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationAxis_846bcdbb-dcc5-422a-94dc-a0309c017fc9" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationAxis_846bcdbb-dcc5-422a-94dc-a0309c017fc9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanSponsorLocationDomain_241e2f99-0b6b-455d-94a4-1f9c45664c28" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanSponsorLocationDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationAxis_846bcdbb-dcc5-422a-94dc-a0309c017fc9" xlink:to="loc_us-gaap_RetirementPlanSponsorLocationDomain_241e2f99-0b6b-455d-94a4-1f9c45664c28" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DomesticPlanMember_fbb76546-164a-4b09-b4fa-30a374ba513b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DomesticPlanMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanSponsorLocationDomain_241e2f99-0b6b-455d-94a4-1f9c45664c28" xlink:to="loc_us-gaap_DomesticPlanMember_fbb76546-164a-4b09-b4fa-30a374ba513b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_country_US_ba88e235-86e7-44a0-bb33-e3273ee9be4e" xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DomesticPlanMember_fbb76546-164a-4b09-b4fa-30a374ba513b" xlink:to="loc_country_US_ba88e235-86e7-44a0-bb33-e3273ee9be4e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeAxis_e87cf081-19b6-4964-951c-a1742cd803d4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:to="loc_us-gaap_RetirementPlanTypeAxis_e87cf081-19b6-4964-951c-a1742cd803d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_RetirementPlanTypeDomain_35f4fccf-da0b-421d-bd56-3e2cc19cb486" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetirementPlanTypeDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeAxis_e87cf081-19b6-4964-951c-a1742cd803d4" xlink:to="loc_us-gaap_RetirementPlanTypeDomain_35f4fccf-da0b-421d-bd56-3e2cc19cb486" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_PensionPlansDefinedBenefitMember_1f6442d2-fec4-4429-9a6a-1702d38cb86d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PensionPlansDefinedBenefitMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_RetirementPlanTypeDomain_35f4fccf-da0b-421d-bd56-3e2cc19cb486" xlink:to="loc_us-gaap_PensionPlansDefinedBenefitMember_1f6442d2-fec4-4429-9a6a-1702d38cb86d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable_36f7fe1a-a26c-4ee2-bb0b-bf879ef1d39a" xlink:to="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent_07651879-b6da-4c8e-bf12-ef793bd304be" xlink:href="virc-20230430.xsd#virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent_07651879-b6da-4c8e-bf12-ef793bd304be" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_9a0d241a-ea1a-4c0d-9c6b-0efecfe71a09" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent_9a0d241a-ea1a-4c0d-9c6b-0efecfe71a09" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_DefinedContributionPlanNumberOfCommonSharesHeld_6467b326-354c-46e6-a6a2-c031b01ad0d4" xlink:href="virc-20230430.xsd#virc_DefinedContributionPlanNumberOfCommonSharesHeld"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_virc_DefinedContributionPlanNumberOfCommonSharesHeld_6467b326-354c-46e6-a6a2-c031b01ad0d4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer_2a3ad5d4-d34e-4484-adf7-864a1006c4fd" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DefinedBenefitPlanContributionsByEmployer"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems_d36068ef-5df6-4078-b636-050303514e4b" xlink:to="loc_us-gaap_DefinedBenefitPlanContributionsByEmployer_2a3ad5d4-d34e-4484-adf7-864a1006c4fd" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/WarrantyDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#WarrantyDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/WarrantyDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_5ec125cc-c5b5-4d32-b513-84be7571714d" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantiesDisclosuresAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ScheduleOfWarrantyTable_01d42784-354a-4e1f-a00b-0c415e6131f7" xlink:href="virc-20230430.xsd#virc_ScheduleOfWarrantyTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_5ec125cc-c5b5-4d32-b513-84be7571714d" xlink:to="loc_virc_ScheduleOfWarrantyTable_01d42784-354a-4e1f-a00b-0c415e6131f7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_e5f47cc5-96d1-4791-b338-fc659ceace7e" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_virc_ScheduleOfWarrantyTable_01d42784-354a-4e1f-a00b-0c415e6131f7" xlink:to="loc_srt_RangeAxis_e5f47cc5-96d1-4791-b338-fc659ceace7e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_60ec6307-97a5-49d8-b236-a69a52da1ef7" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_e5f47cc5-96d1-4791-b338-fc659ceace7e" xlink:to="loc_srt_RangeMember_60ec6307-97a5-49d8-b236-a69a52da1ef7" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_ee9d2197-0e29-4589-9fc8-3f1baf8ac5ab" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_60ec6307-97a5-49d8-b236-a69a52da1ef7" xlink:to="loc_srt_MaximumMember_ee9d2197-0e29-4589-9fc8-3f1baf8ac5ab" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_WarrantyLineItems_1487f4ad-4766-4293-ad2a-86f7f1c7af31" xlink:href="virc-20230430.xsd#virc_WarrantyLineItems"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_virc_ScheduleOfWarrantyTable_01d42784-354a-4e1f-a00b-0c415e6131f7" xlink:to="loc_virc_WarrantyLineItems_1487f4ad-4766-4293-ad2a-86f7f1c7af31" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ProductWarranty_7e709783-3490-4b55-95b7-2683a852b128" xlink:href="virc-20230430.xsd#virc_ProductWarranty"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_virc_WarrantyLineItems_1487f4ad-4766-4293-ad2a-86f7f1c7af31" xlink:to="loc_virc_ProductWarranty_7e709783-3490-4b55-95b7-2683a852b128" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_b5395bdb-5cc1-4dc4-94a8-b31eec21c9c4" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_ProductWarrantiesDisclosuresAbstract_5ec125cc-c5b5-4d32-b513-84be7571714d" xlink:to="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_b5395bdb-5cc1-4dc4-94a8-b31eec21c9c4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_e1b7f802-6711-4bc7-b9f9-a300cd9a255e" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_b5395bdb-5cc1-4dc4-94a8-b31eec21c9c4" xlink:to="loc_us-gaap_ProductWarrantyAccrual_e1b7f802-6711-4bc7-b9f9-a300cd9a255e" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_45ee7d17-1270-4336-91d0-4afeda6836d3" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_b5395bdb-5cc1-4dc4-94a8-b31eec21c9c4" xlink:to="loc_us-gaap_ProductWarrantyAccrualWarrantiesIssued_45ee7d17-1270-4336-91d0-4afeda6836d3" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyExpense_1593b1cc-7459-4e64-a427-d9b5cef650a1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyExpense"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_b5395bdb-5cc1-4dc4-94a8-b31eec21c9c4" xlink:to="loc_us-gaap_ProductWarrantyExpense_1593b1cc-7459-4e64-a427-d9b5cef650a1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_ProductWarrantyAccrual_be2ffe14-3e17-4fea-bb33-5ba9c2c7d531" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward_b5395bdb-5cc1-4dc4-94a8-b31eec21c9c4" xlink:to="loc_us-gaap_ProductWarrantyAccrual_be2ffe14-3e17-4fea-bb33-5ba9c2c7d531" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/ContingenciesDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#ContingenciesDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/ContingenciesDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_9cce1345-61a6-4ec3-acc0-26326adfb5c1" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LossContingenciesTable"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_CommitmentsAndContingenciesDisclosureAbstract_9cce1345-61a6-4ec3-acc0-26326adfb5c1" xlink:to="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeAxis_2b9955d0-5d92-4891-bc54-523516de35c9" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:to="loc_srt_RangeAxis_2b9955d0-5d92-4891-bc54-523516de35c9" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_RangeMember_ea337407-4659-414e-999e-393c7050a2f4" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeAxis_2b9955d0-5d92-4891-bc54-523516de35c9" xlink:to="loc_srt_RangeMember_ea337407-4659-414e-999e-393c7050a2f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_MaximumMember_3a387d53-5fa4-4534-b5ff-7873c016c245" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_RangeMember_ea337407-4659-414e-999e-393c7050a2f4" xlink:to="loc_srt_MaximumMember_3a387d53-5fa4-4534-b5ff-7873c016c245" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductOrServiceAxis_1461e380-eb20-4a89-bbda-9fea571a1699" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductOrServiceAxis"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:to="loc_srt_ProductOrServiceAxis_1461e380-eb20-4a89-bbda-9fea571a1699" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_ProductsAndServicesDomain"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductOrServiceAxis_1461e380-eb20-4a89-bbda-9fea571a1699" xlink:to="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ProductLiabilityMember_c537e081-4aa6-4825-985e-85a188e80d9f" xlink:href="virc-20230430.xsd#virc_ProductLiabilityMember"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_ProductLiabilityMember_c537e081-4aa6-4825-985e-85a188e80d9f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_WorkerscompensationLiabilityInsuranceMember_ae78602c-5586-4ed8-8943-6c33044ff93d" xlink:href="virc-20230430.xsd#virc_WorkerscompensationLiabilityInsuranceMember"/>
    <link:presentationArc order="2" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_WorkerscompensationLiabilityInsuranceMember_ae78602c-5586-4ed8-8943-6c33044ff93d" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_GeneralLiabilityLossMember_4dffe8cd-0268-4945-968e-cd9c48e009cc" xlink:href="virc-20230430.xsd#virc_GeneralLiabilityLossMember"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_GeneralLiabilityLossMember_4dffe8cd-0268-4945-968e-cd9c48e009cc" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_AutomobileLiabilityLossMember_984a993d-fa99-43c5-a15a-e64f19c8cc86" xlink:href="virc-20230430.xsd#virc_AutomobileLiabilityLossMember"/>
    <link:presentationArc order="4" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_AutomobileLiabilityLossMember_984a993d-fa99-43c5-a15a-e64f19c8cc86" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_LossLiabilityMember_e8a50b9f-a582-421e-8b87-64d758af39d1" xlink:href="virc-20230430.xsd#virc_LossLiabilityMember"/>
    <link:presentationArc order="5" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_srt_ProductsAndServicesDomain_13c1ee74-7dea-451c-b4df-93b5659588f4" xlink:to="loc_virc_LossLiabilityMember_e8a50b9f-a582-421e-8b87-64d758af39d1" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_LossContingenciesLineItems_4e17d154-e8b8-46c2-8074-57450928ddfb" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LossContingenciesLineItems"/>
    <link:presentationArc order="3" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesTable_19e859e1-376e-4ffe-9be0-765a8054d0ef" xlink:to="loc_us-gaap_LossContingenciesLineItems_4e17d154-e8b8-46c2-8074-57450928ddfb" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_SelfInsuranceRetention_d222e15a-c15c-4afd-81bc-1ce7611e3a79" xlink:href="virc-20230430.xsd#virc_SelfInsuranceRetention"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_LossContingenciesLineItems_4e17d154-e8b8-46c2-8074-57450928ddfb" xlink:to="loc_virc_SelfInsuranceRetention_d222e15a-c15c-4afd-81bc-1ce7611e3a79" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://www.virco.com/role/DeliveryCostsDetails" xlink:type="simple" xlink:href="virc-20230430.xsd#DeliveryCostsDetails"/>
  <link:presentationLink xlink:role="http://www.virco.com/role/DeliveryCostsDetails" xlink:type="extended">
    <link:loc xlink:type="locator" xlink:label="loc_us-gaap_OtherIncomeAndExpensesAbstract_e30a934b-d1e4-4bf9-b517-6fcf36dd5ac7" xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndExpensesAbstract"/>
    <link:loc xlink:type="locator" xlink:label="loc_virc_ShippingAndClassroomDeliveryCosts_a4f691f3-353d-4964-a6d9-620a71228c2f" xlink:href="virc-20230430.xsd#virc_ShippingAndClassroomDeliveryCosts"/>
    <link:presentationArc order="1" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="loc_us-gaap_OtherIncomeAndExpensesAbstract_e30a934b-d1e4-4bf9-b517-6fcf36dd5ac7" xlink:to="loc_virc_ShippingAndClassroomDeliveryCosts_a4f691f3-353d-4964-a6d9-620a71228c2f" xlink:type="arc" preferredLabel="http://www.xbrl.org/2003/role/terseLabel"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>10
<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="idm139956387639392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Cover Page - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Jun. 04, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_CoverAbstract', window );"><strong>Cover [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_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Apr. 30,  2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">1-8777<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">VIRCO MFG. CORPORATION<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">DE<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">95-1613718<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">2027 Harpers Way<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">Torrance<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">CA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">90501<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">310<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">533-0474<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common Stock, $0.01 par value per share<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">VIRC<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000751365<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,210,985<span></span>
</td>
</tr>
<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>
</tr>
<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_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2024<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">Q1<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_AmendmentFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_AmendmentFlag</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area code of city</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CityAreaCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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_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_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Code for the postal or zip code</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressPostalZipCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the state or province.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressStateOrProvince</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:stateOrProvinceItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCentralIndexKey">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCentralIndexKey</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:centralIndexKeyItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityCurrentReportingStatus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityCurrentReportingStatus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate if registrant meets the emerging growth company criteria.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityEmergingGrowthCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFileNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fileNumberItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityFilerCategory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityFilerCategory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:filerCategoryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Two-character EDGAR code representing the state or country of incorporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityIncorporationStateCountryCode</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarStateCountryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Regulation S-T<br> -Number 232<br> -Section 405<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityInteractiveDataCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:yesNoItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityRegistrantName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityRegistrantName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityShellCompany</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Indicates that the company is a Smaller Reporting Company (SRC).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntitySmallBusiness</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityTaxIdentificationNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:employerIdItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Local phone number for entity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_LocalPhoneNumber</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Title of a 12(b) registered security.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_Security12bTitle</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:securityTitleItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the Exchange on which a security is registered.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_SecurityExchangeName</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:edgarExchangeCodeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_TradingSymbol">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Trading symbol of an instrument as listed on an exchange.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_TradingSymbol</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:tradingSymbolItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>11
<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="idm139956389528128">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Unaudited Condensed Consolidated Balance Sheets - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</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_Cash', window );">Cash</a></td>
<td class="nump">$ 625<span></span>
</td>
<td class="nump">$ 1,057<span></span>
</td>
<td class="nump">$ 539<span></span>
</td>
</tr>
<tr class="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 );">Trade accounts receivables, net</a></td>
<td class="nump">15,524<span></span>
</td>
<td class="nump">18,435<span></span>
</td>
<td class="nump">13,326<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivablesNetCurrent', window );">Other receivables</a></td>
<td class="nump">35<span></span>
</td>
<td class="nump">68<span></span>
</td>
<td class="nump">85<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeTaxesReceivable', window );">Income tax receivable</a></td>
<td class="nump">321<span></span>
</td>
<td class="nump">19<span></span>
</td>
<td class="nump">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_InventoryNet', window );">Inventories</a></td>
<td class="nump">85,640<span></span>
</td>
<td class="nump">67,406<span></span>
</td>
<td class="nump">66,297<span></span>
</td>
</tr>
<tr class="re">
<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,698<span></span>
</td>
<td class="nump">2,083<span></span>
</td>
<td class="nump">2,156<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">104,843<span></span>
</td>
<td class="nump">89,068<span></span>
</td>
<td class="nump">82,538<span></span>
</td>
</tr>
<tr class="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:</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_Land', window );">Land</a></td>
<td class="nump">3,731<span></span>
</td>
<td class="nump">3,731<span></span>
</td>
<td class="nump">3,731<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LandImprovements', window );">Land improvements</a></td>
<td class="nump">686<span></span>
</td>
<td class="nump">686<span></span>
</td>
<td class="nump">653<span></span>
</td>
</tr>
<tr class="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 building improvements</a></td>
<td class="nump">51,391<span></span>
</td>
<td class="nump">51,310<span></span>
</td>
<td class="nump">51,375<span></span>
</td>
</tr>
<tr class="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">114,655<span></span>
</td>
<td class="nump">113,662<span></span>
</td>
<td class="nump">113,901<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseholdImprovementsGross', window );">Leasehold improvements</a></td>
<td class="nump">983<span></span>
</td>
<td class="nump">983<span></span>
</td>
<td class="nump">1,009<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 );">Total property, plant and equipment</a></td>
<td class="nump">171,446<span></span>
</td>
<td class="nump">170,372<span></span>
</td>
<td class="nump">170,669<span></span>
</td>
</tr>
<tr class="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 );">Less accumulated depreciation and amortization</a></td>
<td class="nump">136,779<span></span>
</td>
<td class="nump">135,810<span></span>
</td>
<td class="nump">135,844<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">34,667<span></span>
</td>
<td class="nump">34,562<span></span>
</td>
<td class="nump">34,825<span></span>
</td>
</tr>
<tr class="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 );">Operating lease right-of-use assets</a></td>
<td class="nump">9,326<span></span>
</td>
<td class="nump">10,120<span></span>
</td>
<td class="nump">12,892<span></span>
</td>
</tr>
<tr class="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">8,249<span></span>
</td>
<td class="nump">7,800<span></span>
</td>
<td class="nump">769<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAssetsNoncurrent', window );">Other assets, net</a></td>
<td class="nump">8,848<span></span>
</td>
<td class="nump">8,576<span></span>
</td>
<td class="nump">8,383<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_Assets', window );">Total assets</a></td>
<td class="nump">165,933<span></span>
</td>
<td class="nump">150,126<span></span>
</td>
<td class="nump">139,407<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrentAbstract', window );"><strong>Current liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableCurrent', window );">Accounts payable</a></td>
<td class="nump">23,628<span></span>
</td>
<td class="nump">19,448<span></span>
</td>
<td class="nump">19,437<span></span>
</td>
</tr>
<tr class="ro">
<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 and employee benefits</a></td>
<td class="nump">9,416<span></span>
</td>
<td class="nump">9,554<span></span>
</td>
<td class="nump">5,055<span></span>
</td>
</tr>
<tr class="re">
<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">20,362<span></span>
</td>
<td class="nump">7,360<span></span>
</td>
<td class="nump">18,905<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiabilityCurrent', window );">Current portion operating lease liability</a></td>
<td class="nump">5,271<span></span>
</td>
<td class="nump">5,082<span></span>
</td>
<td class="nump">4,769<span></span>
</td>
</tr>
<tr class="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 liabilities</a></td>
<td class="nump">7,868<span></span>
</td>
<td class="nump">7,081<span></span>
</td>
<td class="nump">6,049<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_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">66,545<span></span>
</td>
<td class="nump">48,525<span></span>
</td>
<td class="nump">54,215<span></span>
</td>
</tr>
<tr class="re">
<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 liabilities:</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_SelfInsuranceReserveNoncurrent', window );">Accrued self-insurance retention</a></td>
<td class="nump">1,251<span></span>
</td>
<td class="nump">1,050<span></span>
</td>
<td class="nump">1,533<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_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent', window );">Accrued pension expenses</a></td>
<td class="nump">10,802<span></span>
</td>
<td class="nump">10,676<span></span>
</td>
<td class="nump">15,332<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccruedIncomeTaxesNoncurrent', window );">Income tax payable</a></td>
<td class="nump">85<span></span>
</td>
<td class="nump">79<span></span>
</td>
<td class="nump">76<span></span>
</td>
</tr>
<tr class="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, less current portion</a></td>
<td class="nump">14,323<span></span>
</td>
<td class="nump">14,384<span></span>
</td>
<td class="nump">14,564<span></span>
</td>
</tr>
<tr class="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 );">Operating lease liability, less current portion</a></td>
<td class="nump">5,648<span></span>
</td>
<td class="nump">6,796<span></span>
</td>
<td class="nump">10,297<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherAccruedLiabilitiesNoncurrent', window );">Other long-term liabilities</a></td>
<td class="nump">557<span></span>
</td>
<td class="nump">555<span></span>
</td>
<td class="nump">640<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_LiabilitiesNoncurrent', window );">Total non-current liabilities</a></td>
<td class="nump">32,666<span></span>
</td>
<td class="nump">33,540<span></span>
</td>
<td class="nump">42,442<span></span>
</td>
</tr>
<tr class="re">
<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 (Notes 6, 7 and 13)</a></td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
<td class="text"> <span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract', window );"><strong>Preferred stock:</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_PreferredStockValue', window );">Authorized 3,000,000 shares, $0.01 par value; none issued or outstanding</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_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract', window );"><strong>Common stock:</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_CommonStockValue', window );">Authorized 25,000,000 shares, $0.01 par value; issued and outstanding 16,210,985 shares at 4/30/2023 and 1/31/2023, and 16,102,023 at 4/30/2022</a></td>
<td class="nump">162<span></span>
</td>
<td class="nump">162<span></span>
</td>
<td class="nump">161<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdditionalPaidInCapital', window );">Additional paid-in capital</a></td>
<td class="nump">120,993<span></span>
</td>
<td class="nump">120,890<span></span>
</td>
<td class="nump">120,745<span></span>
</td>
</tr>
<tr class="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 );">Accumulated deficit</a></td>
<td class="num">(52,073)<span></span>
</td>
<td class="num">(50,631)<span></span>
</td>
<td class="num">(72,262)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(2,360)<span></span>
</td>
<td class="num">(2,360)<span></span>
</td>
<td class="num">(5,894)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Total stockholders&#8217; equity</a></td>
<td class="nump">66,722<span></span>
</td>
<td class="nump">68,061<span></span>
</td>
<td class="nump">42,750<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesAndStockholdersEquity', window );">Total liabilities and stockholders&#8217; equity</a></td>
<td class="nump">$ 165,933<span></span>
</td>
<td class="nump">$ 150,126<span></span>
</td>
<td class="nump">$ 139,407<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AccountsPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_AccruedIncomeTaxesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 domestic and foreign income tax obligations due beyond one year or the operating cycle, whichever is longer. Alternate captions include income taxes payable, noncurrent.</p></div>
<a href="javascript: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(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_AccruedIncomeTaxesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_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_AdditionalPaidInCapital">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.</p></div>
<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(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_AdditionalPaidInCapital</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_Cash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631418-115840<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 946<br> -SubTopic 210<br> -Section 45<br> -Paragraph 21<br> -URI https://asc.fasb.org/extlink&amp;oid=118262064&amp;loc=SL116631419-115840<br><br>Reference 4: 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(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_Cash</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-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_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_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_IncomeTaxesReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes.</p></div>
<a href="javascript: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.5(c))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 2: 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(3)(a)(4))<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 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.10)<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_IncomeTaxesReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Land">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 depletion of real estate held for productive use, excluding 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_Land</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LandImprovements">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 additions or improvements to real estate held for productive use. Examples include, but are not limited to, walkways, driveways, fences, and parking lots.</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_LandImprovements</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LeaseholdImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 additions or improvements to assets held under a lease 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 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_LeaseholdImprovementsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_LiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 due after one year or beyond 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 201.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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(23))<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(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 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 201.5-02(26))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: 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 6: 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 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://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 201.5-02(24))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<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)(4)(iii)(A))<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)(4)(i))<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)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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 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/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 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI 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)(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 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 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 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 20: 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 21: 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 22: 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 23: 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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_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_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_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>
<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_OtherAccruedLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 after 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.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_OtherAccruedLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherAssetsNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 noncurrent assets 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/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(17))<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_OtherAssetsNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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, of receivables classified as other, due within 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherReceivablesNetCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract</td>
</tr>
<tr>
<td style="padding-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_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_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_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>
<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_SelfInsuranceReserveNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 accrued known and estimated losses incurred as of the balance sheet date for which no insurance coverage exists, and for which a claim has been made or is probable of being asserted, typically arising from workmen's compensation-type of incidents and personal injury to nonemployees from accidents on the entity's property that are expected to be paid after 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SelfInsuranceReserveNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Pension and Other Postretirement Defined Benefit Plans, Including Life Insurance, Liabilities, Noncurrent</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;">virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>12
<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="idm139956387603952">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Unaudited Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares<br></strong></div></th>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 (shares)</a></td>
<td class="nump">3,000,000<span></span>
</td>
<td class="nump">3,000,000<span></span>
</td>
<td class="nump">3,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockParOrStatedValuePerShare', window );">Preferred stock, par value (usd per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred stock, shares issued (shares)</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="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred stock, shares outstanding (shares)</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_CommonStockSharesAuthorized', window );">Common stock, shares authorized (shares)</a></td>
<td class="nump">25,000,000<span></span>
</td>
<td class="nump">25,000,000<span></span>
</td>
<td class="nump">25,000,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockParOrStatedValuePerShare', window );">Common stock, par value (usd per share)</a></td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
<td class="nump">$ 0.01<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesIssued', window );">Common stock, shares issued (shares)</a></td>
<td class="nump">16,210,985<span></span>
</td>
<td class="nump">16,210,985<span></span>
</td>
<td class="nump">16,102,023<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common stock, shares outstanding (shares)</a></td>
<td class="nump">16,210,985<span></span>
</td>
<td class="nump">16,210,985<span></span>
</td>
<td class="nump">16,102,023<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_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_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 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_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_PreferredStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.</p></div>
<a href="javascript: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_PreferredStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>13
<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="idm139956389383024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Unaudited Condensed Consolidated Statements of Income - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeStatementAbstract', window );"><strong>Income Statement [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_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 34,943<span></span>
</td>
<td class="nump">$ 32,084<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Costs of goods sold</a></td>
<td class="nump">21,741<span></span>
</td>
<td class="nump">22,377<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">13,202<span></span>
</td>
<td class="nump">9,707<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SellingGeneralAndAdministrativeExpense', window );">Selling, general and administrative expenses</a></td>
<td class="nump">14,514<span></span>
</td>
<td class="nump">14,451<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 loss</a></td>
<td class="num">(1,312)<span></span>
</td>
<td class="num">(4,744)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrealizedGainLossOnInvestments', window );">Unrealized gain (loss) on investment in trust account</a></td>
<td class="num">(299)<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_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent', window );">Pension expense</a></td>
<td class="nump">161<span></span>
</td>
<td class="nump">195<span></span>
</td>
</tr>
<tr class="re">
<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="nump">712<span></span>
</td>
<td class="nump">427<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 );">Loss before income taxes</a></td>
<td class="num">(1,886)<span></span>
</td>
<td class="num">(5,366)<span></span>
</td>
</tr>
<tr class="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 benefit</a></td>
<td class="num">(444)<span></span>
</td>
<td class="num">(282)<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 loss</a></td>
<td class="num">$ (1,442)<span></span>
</td>
<td class="num">$ (5,084)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Net loss per common share:</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_EarningsPerShareBasic', window );">Basic (usd per share)</a></td>
<td class="num">$ (0.09)<span></span>
</td>
<td class="num">$ (0.32)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Diluted (usd per share)</a></td>
<td class="num">$ (0.09)<span></span>
</td>
<td class="num">$ (0.32)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract', window );"><strong>Weighted average shares of common stock outstanding:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Basic (shares)</a></td>
<td class="nump">16,211<span></span>
</td>
<td class="nump">16,033<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted (shares)</a></td>
<td class="nump">16,211<span></span>
</td>
<td class="nump">16,033<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI 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_CostOfGoodsAndServicesSold</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_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_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 (reversal of expense) for net periodic benefit cost components, excluding service cost component, of defined benefit plan. Amount includes, but is not limited to, interest cost, expected (return) loss on plan asset, amortization of prior service cost (credit), amortization of (gain) loss, amortization of transition (asset) obligation, settlement (gain) loss, curtailment (gain) loss and certain termination 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 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_SellingGeneralAndAdministrativeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_UnrealizedGainLossOnInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrealized gain (loss) on investment.</p></div>
<a href="javascript: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_UnrealizedGainLossOnInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_WeightedAverageNumberOfSharesOutstandingAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_WeightedAverageNumberOfSharesOutstandingAbstract</td>
</tr>
<tr>
<td style="padding-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_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>14
<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="idm139956389475152">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="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 loss</a></td>
<td class="num">$ (1,442)<span></span>
</td>
<td class="num">$ (5,084)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract', window );"><strong>Other comprehensive income:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Pension adjustments, net of tax effect</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">135<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 );">Net comprehensive loss</a></td>
<td class="num">$ (1,442)<span></span>
</td>
<td class="num">$ (4,949)<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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract</td>
</tr>
<tr>
<td style="padding-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_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit 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 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 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 10A<br> -Subparagraph (i-k)<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_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>15
<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="idm139956393467312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss) (Parentheticals) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax', window );">Pension adjustment, tax expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 tax (expense) benefit for reclassification adjustment from accumulated other comprehensive (income) loss of defined benefit 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 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 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 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e640-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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>16
<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="idm139956389422080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Unaudited Condensed Consolidated Statements of Cash Flows - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Operating activities</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (1,442)<span></span>
</td>
<td class="num">$ (5,084)<span></span>
</td>
</tr>
<tr class="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 loss to net cash used in operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DepreciationDepletionAndAmortization', window );">Depreciation and amortization</a></td>
<td class="nump">1,195<span></span>
</td>
<td class="nump">1,129<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_virc_NoncashRentExpense', window );">Non-cash lease benefits</a></td>
<td class="num">(165)<span></span>
</td>
<td class="num">(126)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProvisionForDoubtfulAccounts', window );">Provision for doubtful accounts</a></td>
<td class="nump">15<span></span>
</td>
<td class="nump">15<span></span>
</td>
</tr>
<tr class="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">26<span></span>
</td>
<td class="nump">43<span></span>
</td>
</tr>
<tr class="ro">
<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 taxes</a></td>
<td class="num">(448)<span></span>
</td>
<td class="num">(370)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Stock-based compensation</a></td>
<td class="nump">103<span></span>
</td>
<td class="nump">253<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax', window );">Amortization of net actuarial loss for pension plans</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">135<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_UnrealizedGainLossOnInvestments', window );">Non-cash unrealized gain on investment</a></td>
<td class="num">(299)<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_IncreaseDecreaseInOperatingCapitalAbstract', window );"><strong>Changes in operating assets and liabilities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Trade accounts receivable</a></td>
<td class="nump">2,896<span></span>
</td>
<td class="nump">4,428<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherReceivables', window );">Other receivables</a></td>
<td class="nump">33<span></span>
</td>
<td class="nump">33<span></span>
</td>
</tr>
<tr class="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">(18,234)<span></span>
</td>
<td class="num">(18,924)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInIncomeTaxes', window );">Income taxes</a></td>
<td class="num">(296)<span></span>
</td>
<td class="nump">22<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="num">(490)<span></span>
</td>
<td class="num">(180)<span></span>
</td>
</tr>
<tr class="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 liabilities</a></td>
<td class="nump">5,391<span></span>
</td>
<td class="num">(340)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivities', window );">Net cash used in operating activities</a></td>
<td class="num">(11,715)<span></span>
</td>
<td class="num">(18,966)<span></span>
</td>
</tr>
<tr class="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>Investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Capital expenditures</a></td>
<td class="num">(1,533)<span></span>
</td>
<td class="num">(609)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(1,533)<span></span>
</td>
<td class="num">(609)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromIssuanceOfLongTermDebt', window );">Borrowing from long-term debt</a></td>
<td class="nump">15,241<span></span>
</td>
<td class="nump">19,759<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfLongTermDebt', window );">Repayment of long-term debt</a></td>
<td class="num">(2,300)<span></span>
</td>
<td class="num">(804)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsOfFinancingCosts', window );">Payment on deferred financing costs</a></td>
<td class="num">(125)<span></span>
</td>
<td class="num">(200)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided by financing activities</a></td>
<td class="nump">12,816<span></span>
</td>
<td class="nump">18,755<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 decrease in cash</a></td>
<td class="num">(432)<span></span>
</td>
<td class="num">(820)<span></span>
</td>
</tr>
<tr class="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 at beginning of period</a></td>
<td class="nump">1,057<span></span>
</td>
<td class="nump">1,359<span></span>
</td>
</tr>
<tr class="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 at end of period</a></td>
<td class="nump">$ 625<span></span>
</td>
<td class="nump">$ 539<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_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_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_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_IncreaseDecreaseInIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes, and in deferred and other tax liabilities and 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 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_IncreaseDecreaseInIncomeTaxes</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInOtherReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 receivables 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_IncreaseDecreaseInOtherReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 prepaid expenses, and assets 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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 adjustment from accumulated other comprehensive income (loss) for gain (loss) of defined benefit 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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 17A<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL34724391-108580<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (i)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<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 11<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e637-108580<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 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e689-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_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_PaymentsOfFinancingCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for loan and debt issuance 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 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<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_PaymentsOfFinancingCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 (reversal of expense) for expected credit loss on accounts 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/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<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(5))<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_ProvisionForDoubtfulAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RepaymentsOfLongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 for debt initially having maturity due after one year or beyond 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 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_RepaymentsOfLongTermDebt</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_UnrealizedGainLossOnInvestments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 unrealized gain (loss) on investment.</p></div>
<a href="javascript: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_UnrealizedGainLossOnInvestments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_NoncashRentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Non-cash Rent 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;">virc_NoncashRentExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>17
<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="idm139956389024512">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Unaudited Consolidated Statements of Changes in Stockholders' Equity - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Total</div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-in Capital</div></th>
<th class="th"><div>Accumulated Deficit</div></th>
<th class="th"><div>Accumulated Other Comprehensive Loss</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Beginning balance (shares) at Jan. 31, 2022</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,102,023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Jan. 31, 2022</a></td>
<td class="nump">$ 47,446<span></span>
</td>
<td class="nump">$ 161<span></span>
</td>
<td class="nump">$ 120,492<span></span>
</td>
<td class="num">$ (67,178)<span></span>
</td>
<td class="num">$ (6,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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</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_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="num">(5,084)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(5,084)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Pension adjustments, net of tax effect</a></td>
<td class="nump">135<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">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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation expense</a></td>
<td class="nump">$ 253<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">253<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (shares) at Apr. 30, 2022</a></td>
<td class="nump">16,102,023<span></span>
</td>
<td class="nump">16,102,023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Apr. 30, 2022</a></td>
<td class="nump">$ 42,750<span></span>
</td>
<td class="nump">$ 161<span></span>
</td>
<td class="nump">120,745<span></span>
</td>
<td class="num">(72,262)<span></span>
</td>
<td class="num">(5,894)<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_CommonStockSharesOutstanding', window );">Beginning balance (shares) at Jan. 31, 2023</a></td>
<td class="nump">16,210,985<span></span>
</td>
<td class="nump">16,210,985<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Beginning balance at Jan. 31, 2023</a></td>
<td class="nump">$ 68,061<span></span>
</td>
<td class="nump">$ 162<span></span>
</td>
<td class="nump">120,890<span></span>
</td>
<td class="num">(50,631)<span></span>
</td>
<td class="num">(2,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_IncreaseDecreaseInStockholdersEquityRollForward', window );"><strong>Increase (Decrease) in Stockholders' Equity [Roll Forward]</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_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="num">(1,442)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="num">(1,442)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax', window );">Pension adjustments, net of tax effect</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>
<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_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue', window );">Stock compensation expense</a></td>
<td class="nump">$ 103<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">103<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Ending balance (shares) at Apr. 30, 2023</a></td>
<td class="nump">16,210,985<span></span>
</td>
<td class="nump">16,210,985<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquity', window );">Ending balance at Apr. 30, 2023</a></td>
<td class="nump">$ 66,722<span></span>
</td>
<td class="nump">$ 162<span></span>
</td>
<td class="nump">$ 120,993<span></span>
</td>
<td class="num">$ (52,073)<span></span>
</td>
<td class="num">$ (2,360)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126964447&amp;loc=d3e11149-113907<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 20<br> -Section 55<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=126964447&amp;loc=d3e11178-113907<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 35<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126961718&amp;loc=d3e4534-113899<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockSharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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 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_CommonStockSharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInStockholdersEquityRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a 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;">us-gaap_IncreaseDecreaseInStockholdersEquityRollForward</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit 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 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 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 10A<br> -Subparagraph (i-k)<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_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>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>18
<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="idm139956391590416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Unaudited Consolidated Statements of Changes in Stockholders' Equity (Parenthetical) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StatementOfStockholdersEquityAbstract', window );"><strong>Statement of Stockholders' Equity [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_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax', window );">Pension adjustments, tax</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reclassification adjustment, of tax (expense) benefit for (increase) decrease in accumulated other comprehensive income of defined benefit 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 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=d3e640-108580<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 10A<br> -Subparagraph (i-k)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669646-108580<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>19
<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="idm139956390467680">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Basis of Presentation<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract', window );"><strong>Organization, Consolidation and Presentation of Financial Statements [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_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock', window );">Basis of Presentation</a></td>
<td class="text">Basis of PresentationThe accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States (U.S. GAAP) for interim financial information and pursuant to the rules and regulations of the Securities and Exchange Commission. Accordingly, they do not include all of the information and notes required by generally accepted accounting principles for complete financial statements and are presented in accordance with the requirements of Form 10-Q and Rule 10-01 of Regulation S-X. These unaudited condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and notes thereto included in the Company&#8217;s Annual Report on Form 10-K for the fiscal year ended January&#160;31, 2023 (&#8220;Form&#160;10-K&#8221;).&#160; In the opinion of management, all adjustments considered necessary for a fair presentation have been included. Operating results for the three months ended April&#160;30, 2023 are not necessarily indicative of the results that may be expected for the fiscal year ending January&#160;31, 2024.  The balance sheet at January&#160;31, 2023 has been derived from the audited consolidated financial statements at that date, but does not include all of the information and notes required by accounting principles generally accepted in the United States for complete financial statements. All references to the &#8220;Company&#8221; refer to Virco Mfg. Corporation and its subsidiaries.<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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract</td>
</tr>
<tr>
<td style="padding-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_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 organization, consolidation and basis of presentation of financial statements disclosure.</p></div>
<a href="javascript: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 205<br> -URI https://asc.fasb.org/topic&amp;trid=2122149<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -URI https://asc.fasb.org/topic&amp;trid=2197479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<FILENAME>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="idm139956394642048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Seasonality and Management Use of Estimates<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_virc_SeasonalityAbstract', window );"><strong>Seasonality [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_virc_SeasonalityTextBlock', window );">Seasonality and Management Use of Estimates</a></td>
<td class="text">Seasonality and Management Use of EstimatesThe market for educational furniture is marked by extreme seasonality, with approximately 50% of the Company&#8217;s total sales typically occurring from June to August each year, the Company&#8217;s peak season. Hence, the Company typically builds and carries significant amounts of inventory during and in anticipation of this peak summer season to facilitate the rapid delivery requirements of customers in the educational market. This requires a large up-front investment in inventory, labor, storage and related costs as inventory is built in anticipation of peak sales during the summer months. As the capital required for this build-up generally exceeds cash available from operations, the Company has generally relied on third-party bank financing to meet cash flow requirements during the build-up period immediately preceding the peak season. In addition, the Company typically is faced with an overall higher accounts receivable balance during the peak season. This occurs for two primary reasons. First, accounts receivable balances typically increase during the peak season as shipments of products increase. Second, many customers during this period are educational institutions and government entities, which tend to pay accounts receivable slower than commercial customers.  Historically Virco ships approximately 50% of its annual revenue in the months of June, July, and August.  In fiscal 2022, the seasonal peak was distorted due to severe supply chain interruptions, labor shortages, and COVID-19 related employee absences and the Company delivered less than 40% of sales during June, July, and August.  In fiscal year ended January 31, 2023, the Company started to return to the traditional seasonality and delivered approximately 47% of annual sales in June, July, and August.  The Company&#8217;s working capital requirements during and in anticipation of the peak summer season require management to make estimates and judgments that affect assets, liabilities, revenues and expenses, and related contingent assets and liabilities. On an ongoing basis, management evaluates its estimates, including those related to market demand, labor costs and stocking inventory.  Significant estimates made by management include, but are not limited to, valuation of inventory; deferred tax assets and liabilities; useful lives of property, plant and equipment; liabilities under pension, warranty and self-insurance; and the accounts receivable allowance for doubtful accounts.<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_virc_SeasonalityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Seasonality.</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;">virc_SeasonalityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_virc_SeasonalityTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Seasonality.</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;">virc_SeasonalityTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>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="idm139956393412976">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>New Accounting Pronouncements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract', window );"><strong>Accounting Standards Update and Change in Accounting Principle [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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">New Accounting Pronouncements</a></td>
<td class="text"><span style="color:#252525;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company evaluates all Accounting Standards Updates ("ASUs") issued by the Financial Accounting Standards Board ("FASB") for consideration of their applicability to our condensed consolidated financial statements. We have assessed all ASUs issued but not yet adopted and concluded that those not disclosed are not</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> relevant </span><span style="color:#252525;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">to</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"> the Company or are not expected to have a material impact.</span><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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -URI https://asc.fasb.org/topic&amp;trid=2122394<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126987489&amp;loc=SL124442142-165695<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126986314&amp;loc=SL124402458-218513<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 (g)(2)(iii)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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 1<br> -Subparagraph (b)(4)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<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://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><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 (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126986314&amp;loc=SL124402458-218513<br><br>Reference 10: 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)(iv)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=d3e31137-122693<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 13: 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 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL122150809-237846<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=SL108384541-122693<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 10<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128293352&amp;loc=SL126838806-209984<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 65<br> -Paragraph 6<br> -Subparagraph (e)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 20: 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 2<br> -Subparagraph (c)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 10<br> -Section 65<br> -Paragraph 5<br> -Subparagraph (f)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128293352&amp;loc=SL126838806-209984<br><br>Reference 22: 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 2<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br><br>Reference 25: 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 2<br> -Subparagraph (c)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL126732908-238011<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 28: 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 (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983955&amp;loc=SL121967933-165497<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL125981372-237846<br><br>Reference 32: 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 (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<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 1<br> -Subparagraph (b)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>22
<FILENAME>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="idm139956394535488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Revenue Recognition<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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">Revenue RecognitionThe Company manufactures, markets and distributes a wide variety of school and office furniture to wholesalers, distributors, educational institutions and governmental entities. Revenue is recorded for promised goods or services when control is transferred to customers in an amount that reflects the consideration to which the entity expects to be entitled to in exchange for those goods or services.<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's sales generally involve a single performance obligation to deliver goods pursuant to customer purchase orders.&#160; Prices for our products are based on published price lists and customer agreements. The Company has determined that the performance obligations are satisfied at a point in time when the Company completes delivery per the customer contract. The majority of sales are free on board ("FOB") destination where the destination is specified per the customer contract and may include delivering the furniture into the classroom, school site or warehouse. Sales of furniture that are sold FOB factory are typically made to resellers of our product who in turn provide logistics to the ultimate customer. Once a product has been delivered per the shipping terms, the customer is able to direct the use of, and obtain substantially all of the remaining benefits from the asset. The Company considers control to have transferred upon shipment or delivery in accordance with shipping terms because the Company has a present right to payment at that time, the customer has legal title to the asset, the Company has transferred physical possession of the asset, and the customer has significant risks and rewards of ownership of the asset.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Sales are recorded net of discounts, sales incentives and rebates, sales taxes and estimated returns and allowances.  The Company offers sales incentives and discounts through various regional and national programs to our customers. These programs include product rebates, product returns allowances and trade promotions. Variable consideration for these programs is estimated in the transaction price at contract inception based on current sales levels and historical experience using the expected value method, subject to constraint.</span></div><div><span><br/></span></div><div><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company generates revenue primarily by manufacturing and distributing products through resellers and direct-to-customers. Control transfers to both resellers and direct customers at a point in time when the delivery process is complete as determined by the corresponding shipping terms. Therefore, we do not consider them to be meaningfully different revenue streams given similarities in the nature of the products, performance obligation and distribution processes. Sales are predominately in the United States and to a similar class of customer. We do not manage or evaluate the business based on product line or any other discernable category.</span></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>23
<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="idm139956394372800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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">Inventories<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventory is valued at the lower of cost or net realizable value (determined on a first-in, first-out basis) and includes material, labor, and factory overhead.  The Company records valuation adjustments for the excess cost of the inventory over its estimated net realizable value.  Valuation adjustments for slow-moving and obsolete inventory are calculated using an estimated percentage applied to inventories based on a physical inspection of the product in connection with a physical inventory, a review of slow-moving products and component stage, inventory category, historical and forecasted consumption of sales, and consideration of active marketing programs.  The market for education furniture is traditionally driven by value, not style, and the Company has not typically incurred material obsolescence expenses.  If market conditions are less favorable than those anticipated by management, additional valuation adjustments may be required.  The Company records the cost of excess capacity as a period expense, not as a component of capitalized inventory valuation.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventory increased by $19,343,000 at April 30, 2023 compared to April 30, 2022.  The entire increase in inventory was attributable to increased quantity.  The cost and valuation of inventory was stable. The quantity of inventory was increased in response to a material increase in unshipped sales orders (backlog).  The majority of the backlog is scheduled for delivery during the traditional seasonal peak from June through August.  The increase in inventory was financed by increased borrowing under the Company&#8217;s line of credit with PNC Bank and increased vendor credit, which traditionally increases with increased purchases of materials.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a breakdown of the Company&#8217;s inventories as of April&#160;30, 2023, January&#160;31, 2023 and April&#160;30, 2022:</span></div><div style="margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"><tr><td style="width:1.0%"/><td style="width:54.852%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.544%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.739%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.544%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.739%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.841%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.741%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1/31/2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Finished goods</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,370&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,740&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,919&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Work in process</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,918&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,303&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,719&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,363&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,659&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,640&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67,406&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66,297&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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>24
<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="idm139956394473408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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">Leases<div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has operating leases on real property, equipment, and automobiles, expiring at various dates through 2026.  The Company determines if an arrangement is a lease at inception and assesses classification of the lease at commencement. All of the Company&#8217;s leases are classified as operating leases.  Pursuant to ASC 842 -</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Leases</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, the Company uses the implicit rate when readily determinable, or the incremental borrowing rate.  Our incremental borrowing rate is estimated to approximate the interest rate on a collateralized basis with similar terms and payments using Company specific credit spreads. The Company&#8217;s lease terms include options to extend or terminate the lease only when it is reasonably certain that we will exercise that option. Lease expense for our operating leases is recognized on a straight-line basis over the lease term.  </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company has an operating lease for its corporate office, manufacturing and distribution facility located in Torrance, CA, currently with a remaining lease term through April 2025. The Company's lease terms include options to extend or terminate the lease only when it is reasonably certain that we exercise that option.  The Company leases equipment under a&#160;5-year operating lease arrangement. The Company has the option of buying the assets at the end of the lease period at a price that does not result in the Company being reasonably certain of exercising the option. In addition, the Company leases trucks and automobiles under operating leases that include certain fleet management and maintenance services. Certain of the leases contain renewal or purchase options and require payment for property taxes and insurance. The Company records lease expense on a straight-line basis based on the contractual lease payments.  In accordance with ASC 842, the Company recognizes the present value of the future lease commitments as an operating lease liability, and a corresponding right-of-use asset (&#8220;ROU asset&#8221;), net of tenant allowances.  Tenant improvements and related tenant allowances are recorded as a reduction to the ROU asset.  The Company elected to account for leases with an original term of 12 months or less that do not contain a purchase option as short-term leases. Additionally, certain of the leases provide for variable payment for property taxes, insurance, and common area maintenance payments among others. The Company recognizes variable lease expenses for these leases in the period incurred. The Company's lease agreements do not contain any material residual value guarantees or material restrictive covenants.  </span></div><div><span><br/></span></div><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The quantitative information regarding our leases is as follows:</span></div><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"><tr><td style="width:1.0%"/><td style="width:59.465%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:0.1%"/><td style="width:0.841%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.798%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.395%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.801%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands, except lease term and discount rate)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,269&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,327&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sublease income</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Variable lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">261&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">253&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,628</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,667</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Other operating leases information:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,433&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,454&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for new lease liabilities</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">292&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term (years)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.9</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.33&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-top:5pt;text-align:center"><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Minimum future lease payments for operating leases in effect as of&#160;April&#160;30, 2023, are as follows:</span></div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.614%"><tr><td style="width:1.0%"/><td style="width:79.481%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.319%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Lease</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">For the year ending January 31, </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remaining of 2024</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,344&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,794&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,536&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Remaining balance of lease payments</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">11,676</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease liabilities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,271&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,648&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total lease liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">10,919</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Difference between undiscounted cash flows and discounted cash flows</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">757</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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>25
<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="idm139956390386096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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 );">Debt</a></td>
<td class="text">Debt<div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Outstanding balances for the Company&#8217;s long-term debt were as follows:</span></div><div style="margin-bottom:6pt;margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.807%"><tr><td style="width:1.0%"/><td style="width:55.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.801%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.547%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.801%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.547%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.803%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1/31/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revolving credit line</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,122&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,674&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,564&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,622&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,795&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total debt</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,685&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,744&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,469&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less current portion</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,362&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,360&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current portion</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,323&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,384&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,564&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company and Virco Inc., its wholly-owned subsidiary (the &#8220;Borrowers&#8221;) have a Revolving Credit and Security Agreement (the &#8220;Credit Agreement&#8221;) with PNC Bank, National Association, as administrative agent and lender (&#8220;PNC&#8221;).  The Credit Agreement was amended numerous times since its origination in December 2011.  On September 28, 2021, the Borrowers entered into an Amended and Restated Revolving Credit and Security Agreement (the &#8220;Restated Credit Agreement&#8221;) with PNC Bank, which amended and restated the prior Credit Agreement and effectively incorporated all of the prior amendments into an amended and restated form of agreement. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Restated Credit Agreement permits the Company to issue dividends or make payments with respect to the Company&#8217;s capital stock in an aggregate amount up to $3.0 million during any fiscal year, provided that no default shall have occurred or is continuing or would result from any such payment, and the Company must demonstrate pro forma compliance with a 12-month trailing fixed charge coverage ratio of not less than 1.20:1.00 as of the fiscal quarter immediately preceding the date of any such dividend or payment.  The Restated Credit Agreement also requires the Company to maintain a minimum fixed charge coverage ratio, and contains numerous other covenants that limit under certain circumstances the ability of the Borrowers and their subsidiaries to, among other things, merge with or acquire other entities, incur new liens, incur additional indebtedness, sell assets outside of the ordinary course of business, enter into transactions with affiliates, or substantially change the general nature of the business of the Borrowers.  In connection with the Restated Credit Agreement, the Company also agreed to pay to PNC Bank a non-refundable fee of $50,000.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In addition to the financial covenants, the Restated Credit Agreement provides for customary events of default, subject to certain cure periods and other limitations.  Substantially all of the Borrowers' accounts receivable are automatically and promptly swept to repay amounts outstanding under the Restated Credit Agreement upon receipt by the Borrowers. Due to this automatic liquidating nature of the Restated Credit Agreement, if the Borrowers breach any covenant, violate any representation </span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">or warranty or suffer a deterioration in their ability to borrow pursuant to the borrowing base calculation, the Borrowers may not have access to cash liquidity unless provided by PNC at its discretion. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The other material terms of the Restated Credit Agreement are substantially the same as those of the original Credit Agreement, consisting of (i) a revolving line of credit with a Maximum Revolving Advance Amount of  $65.0 million that is subject to a borrowing base limitation and generally provides for advances of up to 85% of eligible accounts receivable, plus a percentage equal to the lesser of 60% of the value of eligible inventory or 85% of the liquidation value of eligible inventory, plus $15.0 million from January through July of each year, minus undrawn amounts of letters of credit and reserves and (ii) an equipment loan of $2.0&#160;million.  The Restated Credit Agreement is secured by substantially all of the Borrowers&#8217; personal property and certain of the Borrowers&#8217; real property. The Restated Credit Agreement is subject to certain prepayment penalties upon early termination of the Restated Credit Agreement. Prior to the maturity date, principal amounts outstanding under the Restated Credit Agreement may be repaid and reborrowed at the option of the Borrowers without premium or penalty, subject to borrowing base limitations, seasonal adjustments and certain other conditions, including reduced borrowings under the revolving line to less than or equal $10.0 million for a period of 30 consecutive days during the fourth quarter of each fiscal year. The Restated Credit Agreement also contains certain financial covenants, including covenants requiring a minimum fixed charge coverage ratio and limits on capital expenditures. The Company was in compliance with its debt covenants as of April&#160;30, 2023.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The Company's revolving line of credit with PNC is structured to provide seasonal credit availability during the Company's peak summer season. Approximately $16.6 million was available for borrowing as of April&#160;30, 2023.  The interest rate range for outstanding loan balances during the quarter ended April&#160;30, 2023 was 7.65% to 9.75%. The Company also incurs a fee on the unused portion of the revolving line of credit at a rate of 0.375%. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In addition to the outstanding debt balance of $30.1 million on the Company's revolving credit line, the Company also carries a mortgage on a manufacturing building in Conway Arkansas. The original note was dated August 2017 for $5.8&#160;million, at a fixed rate of 4% per year and 20 years term.  The outstanding amount under this note was $4.6 million as of April&#160;30, 2023.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 19, 2023, the Company entered into Amendment No. 3 to Amended and Restated Revolving Credit and Security Agreement (&#8220;Amendment No. 3&#8221;) with PNC, with an effective date of May 5, 2023. Amendment No. 3 amended the Restated Credit Agreement and the secured revolving line of credit provided to the Company under the revolving credit facility to reflect the following material changes:</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">i.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:12.73pt">Maximum size of the PNC line of credit has been increased to $72.5&#160;million during the months of June through August of 2023, to provide additional availability for the Company&#8217;s forecast through the 2023 peak borrowing period;</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">ii.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:9.96pt">Increase in the total inventory sublimit under the Credit Agreement to $35.0&#160;million and increase in the Assemble-to-ship (ATS) inventory sublimit to $15.0&#160;million during the months of May through August of 2023; </span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">iii.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:7.19pt">The Company agreed to pay an amendment fee of $50,000, which is 0.67% on the incremental line increase of $7.5&#160;million; and</span></div><div><span><br/></span></div><div style="padding-left:36pt;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">iv.</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:7.73pt">Increase in the Applicable Margin (as defined in the Credit Agreement) of 25 basis points.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Management believes that the carrying value of debt approximated fair value at April&#160;30, 2023, as all of the long-term debt bears interest at variable rates based on prevailing market conditions.</span></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_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>26
<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="idm139956390358144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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">Income Taxes<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In assessing the realizability of deferred tax assets, the Company considers whether it is more likely than not that some portion or all of its deferred tax assets will not be realized.  The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income or reversal of deferred tax liabilities during the periods in which those temporary differences become deductible. As a part of this evaluation, the Company assesses all available positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, the availability of tax carry backs, tax-planning strategies, and results of recent operations, to determine whether sufficient future taxable income will be generated to realize existing deferred tax assets.  Valuation allowances of $575,000, $864,000 and $10,099,000 as of April&#160;30, 2023, January&#160;31, 2023 and April&#160;30, 2022, respectively, are needed for federal deferred tax assets and certain state net operating loss carryforwards to reduce the carrying amount of deferred tax assets to an amount that is more likely than not to be realized.  </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%">For the three months ended April&#160;30, 2023 and 2022, the effective income tax rates were 23.5% and 5.3%, respectively. The change in effective tax rates for the three months ended April&#160;30, 2023 was primarily due to the change in forecasted mix of income before federal and state income taxes and estimated permanent differences.  The effective tax rate for the three months </span></div>ended April&#160;30, 2022 was primarily due to the recording of a valuation allowance needed for federal deferred tax assets and certain state net operating loss carryforwards. The January 31, 2018 and subsequent fiscal years remain open for examination by the IRS and state tax authorities.  The Company is not currently under any state examination.<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>27
<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="idm139956390340592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net loss per Share<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [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_EarningsPerShareTextBlock', window );">Net income (loss) per Share</a></td>
<td class="text">Net Loss per Share<div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic net loss per share is calculated by dividing net loss by the weighted-average number of common shares outstanding.  The following table sets forth the computation of basic net loss per share:</span></div><div style="margin-bottom:6pt;margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"><tr><td style="width:1.0%"/><td style="width:60.586%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.686%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.539%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.689%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(In thousands, except per share data)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,442)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,084)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares of common stock outstanding</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,211&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,033&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dilutive effect of common stock equivalents from equity incentive plans (a)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Totals</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,211&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,033&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss per share - basic</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.09)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.32)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss per share - diluted</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.09)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.32)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:6pt;margin-top:11pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">(a)  At April&#160;30, 2023 and 2022, approximately 85,000 and 169,000 shares of common stock equivalents were excluded from the computation of diluted net loss per share, as the effect would be anti-dilutive since the Company reported a net loss.</span></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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI https://asc.fasb.org/topic&amp;trid=2144383<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 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_EarningsPerShareTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<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="idm139956499786880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [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 );">Stock-Based Compensation</a></td>
<td class="text">Stock-Based Compensation <div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Stock Incentive Plan</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's two stock incentive plans are the 2019 Omnibus Equity Incentive Plan (the &#8220;2019 Plan&#8221;) and the 2011 Stock Incentive Plan (the &#8220;2011 Plan&#8221;). The 2011 Plan expired in 2021 and no new award may be made under the 2011 Plan.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Under the 2019 Plan, the Company may grant an aggregate of up to 1,000,000 shares to its employees in the form of restricted stock units and non-employee directors in the form of restricted stock awards.  Restricted stock units and awards granted under the 2019 Plan are expensed ratably over the vesting period of the awards. The Company determines the fair value of its restricted stock units or awards and related compensation expense as the difference between the market value of the units or awards on the date of grant less the exercise price of the units or awards granted.  During the three-month period ended April&#160;30, 2023, the Company granted 0 awards, vested 0 shares according to their terms and forfeited 0 shares under the 2019 Plan.  As of April&#160;30, 2023, there were approximately 608,435 shares available for future issuance under the 2019 Plan. </span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The following table summarizes the stock-based compensation expense related to restricted stock awards recognized in the Company's statement of operations for the three months ended April&#160;30, 2023 and 2022:</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:54.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.838%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of goods sold</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">198&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stock-based compensation expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">253&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/></tr></table></div>As of April&#160;30, 2023, there was $446,000 of unrecognized compensation expense related to unvested restricted stock units and/or awards, which is expected to be recognized over a weighted average period of approximately 1 year.<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>29
<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="idm139956390331184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Plans<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement 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_PostemploymentBenefitsDisclosureTextBlock', window );">Retirement Plans</a></td>
<td class="text">Retirement Plans<div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company and its subsidiaries cover certain employees under a noncontributory defined benefit retirement plan, entitled the Virco Employees&#8217; Retirement Plan (the &#8220;Pension Plan&#8221;). As more fully described in the Annual Report on Form 10-K, benefit accruals under the Employees Retirement Plan were frozen effective December&#160;31, 2003.  There is no service cost incurred under this plan.</span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company also provides a supplementary retirement plan for certain key employees, the VIP Retirement Plan (the &#8220;VIP Plan&#8221;).  As more fully described in the Annual Report on Form 10-K for the year ended January&#160;31, 2023, benefit accruals under the VIP Plan were frozen since December&#160;31, 2003.  There is no service cost incurred under the VIP Plan.</span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the net periodic pension cost for the Pension Plan and the VIP Plan for the three months ended April&#160;30, 2023 and 2022:</span></div><div style="margin-bottom:6pt;margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.538%"><tr><td style="width:1.0%"/><td style="width:60.175%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.742%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.838%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.745%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Service cost</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">360</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">298</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected return on plan assets</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(199)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(237)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Plan settlement</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of prior service cost</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized net actuarial loss</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">134</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Benefit cost</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">401(k) Retirement Plan</span></div>The Company&#8217;s retirement plan, which covers all U.S. employees, allows participants to defer from 1% to 75% of their eligible compensation through a 401(k)-retirement program.  The plan includes Virco stock as one of the investment options.  At April&#160;30, 2023 and 2022, the plan held 1,320,482 shares and 1,165,985 shares of Virco stock, respectively.  For the three months ended April&#160;30, 2023 and 2022, the compensation costs incurred for employer match, which is paid in the form of Company stock, was $403,000 and $330,000 respectively.<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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_PostemploymentBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 postemployment benefits, which may include supplemental unemployment benefits, obligations recognized for all types of benefits provided to former or inactive employees, their beneficiaries, and covered dependents after employment but before retirement. Disclosure may also include discussion that an obligation for postemployment benefits is not accrued in accordance with regulation only because the amount cannot be reasonably estimated.</p></div>
<a href="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 712<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6410195&amp;loc=d3e80090-111668<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 712<br> -URI https://asc.fasb.org/topic&amp;trid=2197446<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PostemploymentBenefitsDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<FILENAME>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="idm139956390350784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Accrual<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties 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_ProductWarrantyDisclosureTextBlock', window );">Warranty Accrual</a></td>
<td class="text">Warranty Accrual<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company provides a warranty against all substantial defects in material and workmanship. The standard warranty offered on products sold through January 31, 2013 is ten years. Effective February 1, 2014 the Company modified its warranty to a limited lifetime warranty. The warranty effective February 1, 2014, is not anticipated to have a significant effect on warranty expense. Effective January 1, 2017, the Company modified the standard warranty offered on products sold after January 1, 2017 to provide specific warranty periods by product component, with no warranty period longer than ten years. The Company&#8217;s warranty is not a guarantee of service life, which depends upon events outside the Company&#8217;s control and may be different from the warranty period. The Company accrues an estimate of its exposure to warranty claims based upon both product sales data and an analysis of actual warranty claims incurred.  </span></div><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of the Company&#8217;s warranty-claim activity for the three months ended April&#160;30, 2023 and 2022:</span></div><div style="margin-bottom:6pt;margin-top:11pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.321%"><tr><td style="width:1.0%"/><td style="width:59.176%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.378%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.380%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs incurred</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(34)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ending balance</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_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_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>31
<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="idm139956390361872">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Contingencies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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_LossContingencyDisclosures', window );">Contingencies</a></td>
<td class="text">Contingencies<div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has a self-insured retention for product losses up to $250,000 per occurrence, workers&#8217; compensation liability losses up to $250,000 per occurrence, general liability losses up to $50,000 per occurrence and automobile liability losses up to $50,000 per occurrence. The Company has purchased insurance to cover losses in excess of the self-insurance retention or deductible up to a limit of $30,000,000. The Company has obtained an actuarial estimate of its total expected future losses for liability claims and recorded a liability equal to the net present value.</span></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company and its subsidiaries are defendants in various legal proceedings resulting from operations in the normal course of business. It is the opinion of management, in consultation with legal counsel, that the ultimate outcome of all such matters will not materially affect the Company&#8217;s financial position, results of operations or cash flows.</span></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_LossContingencyDisclosures">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 loss and gain contingencies. Describes any existing condition, situation, or set of circumstances involving uncertainty as of the balance sheet date (or prior to issuance of the financial statements) as to a probable or reasonably possible loss incurred by an entity that will ultimately be resolved when one or more future events occur or fail to occur, and typically discloses the amount of loss recorded or a range of possible loss, or an assertion that no reasonable estimate can be made.</p></div>
<a href="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 450<br> -SubTopic 20<br> -URI https://asc.fasb.org/subtopic&amp;trid=2127163<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6397426&amp;loc=d3e17499-108355<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14557-108349<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 30<br> -URI https://asc.fasb.org/subtopic&amp;trid=2127197<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14435-108349<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.Y.Q4)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011672&amp;loc=d3e149879-122751<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=121557415&amp;loc=d3e14326-108349<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 5.Y.Q2)<br> -URI https://asc.fasb.org/extlink&amp;oid=27011672&amp;loc=d3e149879-122751<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LossContingencyDisclosures</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<FILENAME>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="idm139956390331184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Delivery Costs<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherIncomeAndExpensesAbstract', window );"><strong>Other Income and Expenses [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_virc_DeliveryCostsTextBlock', window );">Delivery Costs</a></td>
<td class="text">Delivery CostsFor the three months ended April&#160;30, 2023 and 2022, shipping and classroom delivery costs of approximately $3,343,000 and $3,254,000, respectively, were included in selling, general and administrative expenses in the accompanying condensed consolidated statements of operations.<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_OtherIncomeAndExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherIncomeAndExpensesAbstract</td>
</tr>
<tr>
<td style="padding-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_virc_DeliveryCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Delivery Costs [Text Block]</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;">virc_DeliveryCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<FILENAME>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="idm139956499786880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubsequentEventsAbstract', window );"><strong>Subsequent Events [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_SubsequentEventsTextBlock', window );">Subsequent Events</a></td>
<td class="text">Subsequent Events<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On May 19, 2023, the Company executed Amendment No. 3 to the Restated Credit Agreement, with an effective date of May 5, 2023. See </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:112%">Note 7</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">.</span><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_SubsequentEventsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SubsequentEventsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI https://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SubsequentEventsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<FILENAME>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="idm139956390396688">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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 );">Schedule of Inventory</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a breakdown of the Company&#8217;s inventories as of April&#160;30, 2023, January&#160;31, 2023 and April&#160;30, 2022:</span></div><div style="margin-top:14pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"><tr><td style="width:1.0%"/><td style="width:54.852%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.544%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.739%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.544%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.739%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.841%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.741%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1/31/2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Finished goods</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,370&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,740&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,919&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Work in process</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,918&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,303&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,719&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,352&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,363&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,659&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">85,640&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67,406&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66,297&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_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>35
<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="idm139956390367024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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_LeaseCostTableTextBlock', window );">Quantitative Information of Leases</a></td>
<td class="text"><div style="margin-bottom:10pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The quantitative information regarding our leases is as follows:</span></div><div style="margin-bottom:10pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"><tr><td style="width:1.0%"/><td style="width:59.465%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:0.1%"/><td style="width:0.841%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.798%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.395%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.801%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands, except lease term and discount rate)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,269&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,327&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">97&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sublease income</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Variable lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">261&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">253&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total lease cost</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,628</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,667</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Other operating leases information:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash paid for amounts included in the measurement of lease liabilities</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,433&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,454&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Right-of-use assets obtained in exchange for new lease liabilities</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">292&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term (years)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.2</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.9</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.33&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.38&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Schedule of Minimum Future Lease Payments</a></td>
<td class="text">Minimum future lease payments for operating leases in effect as of&#160;April&#160;30, 2023, are as follows:<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.614%"><tr><td style="width:1.0%"/><td style="width:79.481%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.319%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Operating Lease</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">For the year ending January 31, </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remaining of 2024</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,344&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,794&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,536&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Remaining balance of lease payments</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">11,676</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Short-term lease liabilities</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,271&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease liabilities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,648&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total lease liabilities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">10,919</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Difference between undiscounted cash flows and discounted cash flows</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">757</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<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="idm139956499786880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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_ScheduleOfDebtInstrumentsTextBlock', window );">Outstanding balances of long-term debt</a></td>
<td class="text"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Outstanding balances for the Company&#8217;s long-term debt were as follows:</span></div><div style="margin-bottom:6pt;margin-top:11pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.807%"><tr><td style="width:1.0%"/><td style="width:55.701%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.801%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.547%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.801%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.547%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.803%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1/31/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revolving credit line</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,121&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,122&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,674&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,564&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,622&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,795&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total debt</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,685&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,744&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,469&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less current portion</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,362&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,360&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,905&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current portion</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,323&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,384&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,564&#160;</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></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_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_ScheduleOfDebtInstrumentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 long-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 entity, 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.22)<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 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 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1A<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28541-108399<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 6<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21506-112644<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 69B<br> -URI https://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 6: 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 7: 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 8: 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 7<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21521-112644<br><br>Reference 9: 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 8<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21538-112644<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 470<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=123599511&amp;loc=d3e64711-112823<br><br>Reference 11: 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 12: 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 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21475-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_ScheduleOfDebtInstrumentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>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="idm139956390291104">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net income (loss) per Share (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Earnings Per Share, Basic and Diluted</a></td>
<td class="text"><div style="margin-bottom:6pt;margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"><tr><td style="width:1.0%"/><td style="width:60.586%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.686%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.539%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.689%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(In thousands, except per share data)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,442)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(5,084)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares of common stock outstanding</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,211&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,033&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dilutive effect of common stock equivalents from equity incentive plans (a)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Totals</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,211&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,033&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss per share - basic</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.09)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.32)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net loss per share - diluted</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.09)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.32)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="margin-bottom:6pt;margin-top:11pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">(a)  At April&#160;30, 2023 and 2022, approximately 85,000 and 169,000 shares of common stock equivalents were excluded from the computation of diluted net loss per share, as the effect would be anti-dilutive since the Company reported a net loss.</span></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_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<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="idm139956390364304">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract', window );"><strong>Share-Based Payment Arrangement [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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock', window );">Share-Based Payment Arrangement, Expensed and Capitalized, Amount</a></td>
<td class="text"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The following table summarizes the stock-based compensation expense related to restricted stock awards recognized in the Company's statement of operations for the three months ended April&#160;30, 2023 and 2022:</span></div><div><span><br/></span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:54.455%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:9.864%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.835%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:1.408%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:14.838%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of goods sold</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">198&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total stock-based compensation expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">253&#160;</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/></tr></table></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_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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.</p></div>
<a href="javascript: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_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>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="idm139956390361872">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Plans (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CompensationAndRetirementDisclosureAbstract', window );"><strong>Retirement 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_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock', window );">Schedule of Defined Benefit Plans Disclosures</a></td>
<td class="text">he net periodic pension cost for the Pension Plan and the VIP Plan for the three months ended April&#160;30, 2023 and 2022:<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.538%"><tr><td style="width:1.0%"/><td style="width:60.175%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.742%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.838%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:17.745%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div style="margin-bottom:6pt;margin-top:6pt;text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Service cost</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">360</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">298</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected return on plan assets</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(199)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(237)</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Plan settlement</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of prior service cost</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized net actuarial loss</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">&#8212;</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">134</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Benefit cost</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">195</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></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_CompensationAndRetirementDisclosureAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_CompensationAndRetirementDisclosureAbstract</td>
</tr>
<tr>
<td style="padding-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_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 one or more of the entity's defined benefit pension plans or one or more other defined benefit postretirement plans, separately for pension plans and other postretirement benefit plans including the entity's schedule of fair value of plan assets for defined benefit or other postretirement 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 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2439-114920<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2410-114920<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2417-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<FILENAME>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="idm139956390506784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty Accrual (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Apr. 30, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantiesDisclosuresAbstract', window );"><strong>Product Warranties 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_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Schedule of Product Warranty Liability</a></td>
<td class="text"><div style="margin-bottom:6pt;margin-top:6pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following is a summary of the Company&#8217;s warranty-claim activity for the three months ended April&#160;30, 2023 and 2022:</span></div><div style="margin-bottom:6pt;margin-top:11pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.321%"><tr><td style="width:1.0%"/><td style="width:59.176%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.378%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.566%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:18.380%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">&#160;</span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4/30/2022</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provision</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34&#160;</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Costs incurred</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(34)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ending balance</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">600&#160;</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></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_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_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>41
<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="idm139956387588384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Seasonality (Details)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</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_IncomeStatementLocationAxis=us-gaap_SalesMember', window );">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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_virc_SeasonalityTextualAbstract', window );"><strong>Seasonality (Textual) [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="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_virc_ExtremeSeasonalityGoods', window );">The market for educational furniture is marked by extreme seasonality</a></td>
<td class="nump">50.00%<span></span>
</td>
<td class="nump">47.00%<span></span>
</td>
<td class="nump">40.00%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_virc_ExtremeSeasonalityGoods">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Extreme seasonality goods.</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;">virc_ExtremeSeasonalityGoods</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_virc_SeasonalityTextualAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Seasonality.</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;">virc_SeasonalityTextualAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_IncomeStatementLocationAxis=us-gaap_SalesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SalesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>42
<FILENAME>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="idm139956388587488">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Inventories (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureAbstract', window );"><strong>Inventory 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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_virc_IncreaseInInventories', window );">Increase In Inventories</a></td>
<td class="nump">$ 19,343<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_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">34,370<span></span>
</td>
<td class="nump">$ 25,740<span></span>
</td>
<td class="nump">$ 29,919<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryWorkInProcessNetOfReserves', window );">Work in process</a></td>
<td class="nump">32,918<span></span>
</td>
<td class="nump">25,303<span></span>
</td>
<td class="nump">21,719<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">18,352<span></span>
</td>
<td class="nump">16,363<span></span>
</td>
<td class="nump">14,659<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_InventoryNet', window );">Total inventories</a></td>
<td class="nump">$ 85,640<span></span>
</td>
<td class="nump">$ 67,406<span></span>
</td>
<td class="nump">$ 66,297<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_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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><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 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_InventoryFinishedGoodsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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_InventoryRawMaterialsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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><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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6)(a)(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_InventoryRawMaterialsNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryWorkInProcessNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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><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 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_InventoryWorkInProcessNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_virc_IncreaseInInventories">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Inventories</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;">virc_IncreaseInInventories</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>43
<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="idm139956387541392">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Leases - ASC 842 Quantitative Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>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_OperatingLeaseCost', window );">Operating lease cost</a></td>
<td class="nump">$ 1,269<span></span>
</td>
<td class="nump">$ 1,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_ShortTermLeaseCost', window );">Short-term lease cost</a></td>
<td class="nump">108<span></span>
</td>
<td class="nump">97<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SubleaseIncome', window );">Sublease income</a></td>
<td class="num">(10)<span></span>
</td>
<td class="num">(10)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_VariableLeaseCost', window );">Variable lease cost</a></td>
<td class="nump">261<span></span>
</td>
<td class="nump">253<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_LeaseCost', window );">Total lease cost</a></td>
<td class="nump">1,628<span></span>
</td>
<td class="nump">1,667<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsForRent', window );">Cash paid for amounts included in the measurement of lease liabilities</a></td>
<td class="nump">1,433<span></span>
</td>
<td class="nump">1,454<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CapitalLeaseObligationsIncurred', window );">Right-of-use assets obtained in exchange for new lease liabilities</a></td>
<td class="nump">$ 292<span></span>
</td>
<td class="nump">$ 98<span></span>
</td>
</tr>
<tr class="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 );">Weighted-average remaining lease term (years)</a></td>
<td class="text">2 years 2 months 12 days<span></span>
</td>
<td class="text">2 years 10 months 24 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 );">Weighted-average discount rate</a></td>
<td class="nump">6.33%<span></span>
</td>
<td class="nump">6.38%<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_CapitalLeaseObligationsIncurred">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 lease obligation from new lease.</p></div>
<a href="javascript: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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4313-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=126999549&amp;loc=d3e4304-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_CapitalLeaseObligationsIncurred</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 lease cost recognized by lessee for lease contract.</p></div>
<a href="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> -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_LeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of 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/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 (b)<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_OperatingLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PaymentsForRent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 payments to lessor's for use of assets under operating leases.</p></div>
<a href="javascript: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 (g)<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_PaymentsForRent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ShortTermLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 short-term lease cost, excluding expense for lease with term of one month or less.</p></div>
<a href="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 (c)<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_ShortTermLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SubleaseIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 sublease income excluding finance and operating lease 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 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<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_SubleaseIncome</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_VariableLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.</p></div>
<a href="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 (d)<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_VariableLeaseCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>44
<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="idm139956389014192">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Leases - ASC 842 Minimum Lease Payments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeasesAbstract', window );"><strong>Leases [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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear', window );">Remaining of 2024</a></td>
<td class="nump">$ 4,344<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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2025</a></td>
<td class="nump">5,794<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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2026</a></td>
<td class="nump">1,536<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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">2027</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="ro">
<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 );">2028</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour', window );">Thereafter</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Remaining balance of lease payments</a></td>
<td class="nump">11,676<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 );">Short-term lease liabilities</a></td>
<td class="nump">5,271<span></span>
</td>
<td class="nump">$ 5,082<span></span>
</td>
<td class="nump">$ 4,769<span></span>
</td>
</tr>
<tr class="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 );">Long-term lease liabilities</a></td>
<td class="nump">5,648<span></span>
</td>
<td class="nump">$ 6,796<span></span>
</td>
<td class="nump">$ 10,297<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_OperatingLeaseLiability', window );">Total lease liabilities</a></td>
<td class="nump">10,919<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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Difference between undiscounted cash flows and discounted cash flows</a></td>
<td class="nump">$ 757<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_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_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_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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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>
<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_virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Lessee, Operating Lease, Liability, Payments Due After Year Four</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;">virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>45
<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="idm139956389390816">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Debt (Long-term Debt) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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>
</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_LongTermDebt', window );">Long-term debt</a></td>
<td class="nump">$ 34,685<span></span>
</td>
<td class="nump">$ 21,744<span></span>
</td>
<td class="nump">$ 33,469<span></span>
</td>
</tr>
<tr class="re">
<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 );">Less current portion</a></td>
<td class="nump">20,362<span></span>
</td>
<td class="nump">7,360<span></span>
</td>
<td class="nump">18,905<span></span>
</td>
</tr>
<tr class="ro">
<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 );">Non-current portion</a></td>
<td class="nump">14,323<span></span>
</td>
<td class="nump">14,384<span></span>
</td>
<td class="nump">14,564<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_LongtermDebtTypeAxis=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>
</tr>
<tr class="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>
</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">30,121<span></span>
</td>
<td class="nump">17,122<span></span>
</td>
<td class="nump">28,674<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_LongtermDebtTypeAxis=virc_OtherDebtMember', window );">Other Debt [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_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>
</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_LongTermDebt', window );">Long-term debt</a></td>
<td class="nump">$ 4,564<span></span>
</td>
<td class="nump">$ 4,622<span></span>
</td>
<td class="nump">$ 4,795<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_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_LongtermDebtTypeAxis=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_LongtermDebtTypeAxis=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_LongtermDebtTypeAxis=virc_OtherDebtMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=virc_OtherDebtMember</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>46
<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="idm139956384344432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Debt (Narrative) (Details)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">1 Months Ended</th>
<th class="th" colspan="1">3 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>May 19, 2023 </div>
<div>USD ($) </div>
<div>basisPoint</div>
</th>
<th class="th">
<div>Aug. 31, 2017 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Apr. 30, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Apr. 30, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Sep. 28, 2021 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_virc_DividendPayableMaximumAmountInFiscalYear', window );">Maximum dividend amount in fiscal year</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 3,000,000.0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_virc_LineOfCreditFacilityBorrowingCapacityTerm', window );">Line of credit facility, term</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 15,000,000.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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear', window );">Line of credit facility, period for reduced borrowings during fourth quarter of each fiscal year (consecutive days)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">30 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_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage', window );">Unused portion fee rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.375%<span></span>
</td>
<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_LongTermDebt', window );">Long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 34,685,000<span></span>
</td>
<td class="nump">$ 21,744,000<span></span>
</td>
<td class="nump">$ 33,469,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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember', window );">Subsequent Event [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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_virc_CreditAgreementAmendmentFee', window );">Waiver and amendment fee</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>
<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_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement', window );">Increase in inventory sublimit under credit agreement</a></td>
<td class="nump">35,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>
<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_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement', window );">Increase in assemble to ship inventory sublimit under credit agreement</a></td>
<td class="nump">$ 15,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>
<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_virc_IncrementalCreditLineIncreaseDecreasePercentage', window );">Incremental credit line increase (decrease)</a></td>
<td class="nump">0.0067<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_virc_IncreaseDecreaseApplicableMarginBasisPoints', window );">Increase (decrease) applicable margin basis points | basisPoint</a></td>
<td class="nump">25<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_virc_IncrementalCreditLineIncreaseDecrease', window );">Incremental Credit Line Increase (Decrease)</a></td>
<td class="nump">$ 7,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>
<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_LongtermDebtTypeAxis=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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_LongTermDebt', window );">Long-term debt</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">30,121,000<span></span>
</td>
<td class="nump">$ 17,122,000<span></span>
</td>
<td class="nump">$ 28,674,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_LongtermDebtTypeAxis=us-gaap_MortgagesMember', window );">Original Mortgage Note</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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<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="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,600,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_DebtInstrumentFaceAmount', window );">Face amount</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,800,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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentTerm', window );">Term</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>
<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_ConcentrationRiskByBenchmarkAxis=virc_InventoryMember', window );">Inventory [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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_virc_LineOfCreditFacilityBorrowingBaseLimitation', window );">Revolving credit facility borrowing base limitation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">60.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_ConcentrationRiskByBenchmarkAxis=us-gaap_InventoriesMember', window );">Inventories [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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_virc_LineOfCreditFacilityBorrowingBaseLimitation', window );">Revolving credit facility borrowing base limitation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85.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_srt_RangeAxis=srt_MaximumMember', window );">Maximum [Member] | Accounts receivable [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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_virc_LineOfCreditFacilityBorrowingBaseLimitation', window );">Revolving credit facility borrowing base limitation</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85.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_DebtInstrumentAxis=virc_AmendedAndRestatedCreditAgreementMember', window );">Amended and Restated Credit Agreement | Consecutive Four Fiscal Quarters Ending July 31, 2020</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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio', window );">Minimum fixed charge coverage ratio</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.2<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=virc_EquipmentLoanMember', window );">Equipment Loan [Member] | Amended and Restated Credit Agreement</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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases', window );">Line of credit facility, equipment financing</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</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_LineOfCreditFacilityAxis=virc_PNCMember', window );">PNC [Member] | Amended and Restated Credit Agreement</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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_DebtInstrumentFeeAmount', window );">Non-refundable fee</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 50,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=virc_PNCMember', window );">PNC [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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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 );">Remaining borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">16,600,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=virc_PNCMember', window );">PNC [Member] | Revolving Credit Facility [Member] | Revolving Credit Facility [Member] | Subsequent Event [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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_LineOfCreditFacilityIncreaseDecreaseForPeriodNet', window );">Line of credit facility, net</a></td>
<td class="nump">$ 72,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>
<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=virc_PNCMember', window );">PNC [Member] | Revolving Credit Facility [Member] | Amended and Restated Credit Agreement</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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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 );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">65,000,000.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_LineOfCreditFacilityAxis=virc_PNCMember', window );">PNC [Member] | Equipment Loan [Member] | Amended and Restated Credit Agreement</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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of credit facility, maximum borrowing capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 10,000,000.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_TradingActivityByTypeAxis=virc_AlternateBaseRateLoansMember', window );">Alternate Base Rate Loans [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>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">9.75%<span></span>
</td>
<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_TradingActivityByTypeAxis=virc_AlternateBaseRateLoansMember', window );">Alternate Base Rate Loans [Member] | Minimum</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_LineOfCreditFacilityLineItems', window );"><strong>Line of Credit Facility [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_DebtInstrumentInterestRateStatedPercentage', window );">Interest rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7.65%<span></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_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_DebtInstrumentFeeAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 that accompanies borrowing money under the debt instrument.</p></div>
<a href="javascript: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(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_DebtInstrumentFeeAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_DebtInstrumentTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Period of time between issuance and maturity of debt instrument, 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_DebtInstrumentTerm</td>
</tr>
<tr>
<td style="padding-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_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of borrowing capacity under a line of credit that is available as of the balance sheet date for a specific purpose other than for financing goods acquired for inventory or imminent delivery to a customer.</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_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityIncreaseDecreaseForPeriodNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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) of the credit facility.</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_LineOfCreditFacilityIncreaseDecreaseForPeriodNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_LineOfCreditFacilityLineItems</td>
</tr>
<tr>
<td style="padding-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_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_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 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>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage</td>
</tr>
<tr>
<td style="padding-right: 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_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_virc_CreditAgreementAmendmentFee">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Credit Agreement, Amendment Fee</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;">virc_CreditAgreementAmendmentFee</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, covenant, maintained fixed charge coverage ratio</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;">virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_virc_DividendPayableMaximumAmountInFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Dividend Payable, Maximum Amount In Fiscal 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;">virc_DividendPayableMaximumAmountInFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_IncreaseDecreaseApplicableMarginBasisPoints">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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) Applicable Margin Basis Points</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;">virc_IncreaseDecreaseApplicableMarginBasisPoints</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Assemble To Ship Inventory Sublimit Under Credit 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;">virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Inventory Sublimit Under Credit 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;">virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_IncrementalCreditLineIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Incremental Credit Line Increase (Decrease)</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;">virc_IncrementalCreditLineIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_IncrementalCreditLineIncreaseDecreasePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Incremental Credit Line Increase (Decrease), Percentage</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;">virc_IncrementalCreditLineIncreaseDecreasePercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_virc_LineOfCreditFacilityBorrowingBaseLimitation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of credit facility borrowing base limitation.</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;">virc_LineOfCreditFacilityBorrowingBaseLimitation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_virc_LineOfCreditFacilityBorrowingCapacityTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 Of Credit Facility, Borrowing Capacity, 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;">virc_LineOfCreditFacilityBorrowingCapacityTerm</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of Credit Facility, Period for Reduced Borrowings during Fourth Quarter of Each Fiscal 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;">virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SubsequentEventTypeAxis=us-gaap_SubsequentEventMember</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_LongtermDebtTypeAxis=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_LongtermDebtTypeAxis=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_LongtermDebtTypeAxis=us-gaap_MortgagesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LongtermDebtTypeAxis=us-gaap_MortgagesMember</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=virc_InventoryMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_InventoryMember</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_InventoriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_InventoriesMember</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_ConcentrationRiskByBenchmarkAxis=us-gaap_AccountsReceivableMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_AccountsReceivableMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentAxis=virc_AmendedAndRestatedCreditAgreementMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_AmendedAndRestatedCreditAgreementMember</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_virc_DebtInstrumentCovenantPeriodAxis=virc_CovenantPeriod1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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;">virc_DebtInstrumentCovenantPeriodAxis=virc_CovenantPeriod1Member</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=virc_EquipmentLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_EquipmentLoanMember</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=virc_PNCMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_PNCMember</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=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_TradingActivityByTypeAxis=virc_AlternateBaseRateLoansMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_AlternateBaseRateLoansMember</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>47
<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="idm139956389408416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Income Taxes (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</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_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_DeferredTaxAssetsValuationAllowance', window );">Valuation allowance</a></td>
<td class="nump">$ 575<span></span>
</td>
<td class="nump">$ 10,099<span></span>
</td>
<td class="nump">$ 864<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">23.50%<span></span>
</td>
<td class="nump">5.30%<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_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_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>48
<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="idm139956389011840">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Net income (loss) per Share (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareAbstract', window );"><strong>Earnings Per Share [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_NetIncomeLoss', window );">Net loss</a></td>
<td class="num">$ (1,442)<span></span>
</td>
<td class="num">$ (5,084)<span></span>
</td>
</tr>
<tr class="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 shares outstanding - basic (shares)</a></td>
<td class="nump">16,211<span></span>
</td>
<td class="nump">16,033<span></span>
</td>
</tr>
<tr class="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 );">Net effect of dilutive share-based on the treasury stock method using average market price (shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Totals (shares)</a></td>
<td class="nump">16,211<span></span>
</td>
<td class="nump">16,033<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Net income (loss) per share - basic (usd per share)</a></td>
<td class="num">$ (0.09)<span></span>
</td>
<td class="num">$ (0.32)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareDiluted', window );">Net income (loss) per share - diluted (usd per share)</a></td>
<td class="num">$ (0.09)<span></span>
</td>
<td class="num">$ (0.32)<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_virc_IncrementalCommonSharesExcludedToDilutiveEffect', window );">Incremental common shares excluded to dilutive effect</a></td>
<td class="nump">85<span></span>
</td>
<td class="nump">169<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_EarningsPerShareAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareBasic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_virc_IncrementalCommonSharesExcludedToDilutiveEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Incremental Common Shares Excluded to Dilutive Effect</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;">virc_IncrementalCommonSharesExcludedToDilutiveEffect</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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>49
<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="idm139956387429792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Stock-Based Compensation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1', window );">Stock-based compensation expense</a></td>
<td class="nump">$ 103<span></span>
</td>
<td class="nump">$ 253<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 Goods Sold [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_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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1', window );">Stock-based compensation expense</a></td>
<td class="nump">28<span></span>
</td>
<td class="nump">55<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_SellingGeneralAndAdministrativeExpensesMember', window );">Selling, General and Administrative Expenses [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_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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1', window );">Stock-based compensation expense</a></td>
<td class="nump">75<span></span>
</td>
<td class="nump">$ 198<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>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Unrecognized compensation expense</a></td>
<td class="nump">$ 446<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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, weighted average period to be recognized</a></td>
<td class="text">1 year<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] | 2019 Plan [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_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>
</tr>
<tr class="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 );">Awards authorized (shares)</a></td>
<td class="nump">1,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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod', window );">Granted in the period (shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod', window );">Vested in period (shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod', window );">Forfeited in period (shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Awards available for future issuance (shares)</a></td>
<td class="nump">608,435<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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_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_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_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_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_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 expensed and capitalized 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 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_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_SellingGeneralAndAdministrativeExpensesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_SellingGeneralAndAdministrativeExpensesMember</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_PlanNameAxis=virc_StockIncentivePlan2019Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_StockIncentivePlan2019Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>50
<FILENAME>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="idm139956384336176">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Plans (Periodic Pension Cost) (Details) - Pension Plan [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract', window );"><strong>Components of Net Cost</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_DefinedBenefitPlanServiceCost', window );">Service cost</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_DefinedBenefitPlanInterestCost', window );">Interest cost</a></td>
<td class="nump">360<span></span>
</td>
<td class="nump">298<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets', window );">Expected return on plan assets</a></td>
<td class="num">(199)<span></span>
</td>
<td class="num">(237)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement', window );">Plan settlement</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_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit', window );">Amortization of prior service cost</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss', window );">Recognized net actuarial loss</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">134<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_DefinedBenefitPlanNetPeriodicBenefitCost', window );">Benefit cost</a></td>
<td class="nump">$ 161<span></span>
</td>
<td class="nump">$ 195<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_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 prior service cost (credit) recognized in net periodic benefit cost (credit) of defined benefit 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(5)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(5)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 to benefit obligation of defined benefit plan from remeasurement due to settlement. Excludes decrease to benefit obligation for settlement payment.</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 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(10)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanExpectedReturnOnPlanAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanInterestCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 recognized for passage of time related to defined benefit 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 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 45<br> -Paragraph 3A<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123453770&amp;loc=SL108413299-114919<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanInterestCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanNetPeriodicBenefitCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 net periodic benefit cost (credit) for defined benefit 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 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlanNetPeriodicBenefitCostAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_DefinedBenefitPlanNetPeriodicBenefitCostAbstract</td>
</tr>
<tr>
<td style="padding-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_DefinedBenefitPlanServiceCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 for actuarial present value of benefits attributed to service rendered by employee for defined benefit 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 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (h)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanServiceCost</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Defined Benefit Plan, Recognized Net Actuarial Gain (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;">virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_RetirementPlanTypeAxis=us-gaap_PensionPlansDefinedBenefitMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>51
<FILENAME>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="idm139956390778832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Retirement Plans (Narrative) (Details) - United States [Member] - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems', window );"><strong>Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [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_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent', window );">Minimum annual contributions per employee, percent</a></td>
<td class="nump">1.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent', window );">Maximum annual contributions per employee, percent</a></td>
<td class="nump">75.00%<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_virc_DefinedContributionPlanNumberOfCommonSharesHeld', window );">Number of common shares held</a></td>
<td class="nump">1,320,482<span></span>
</td>
<td class="nump">1,165,985<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DefinedBenefitPlanContributionsByEmployer', window );">Contributions by employer</a></td>
<td class="nump">$ 403<span></span>
</td>
<td class="nump">$ 330<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_DefinedBenefitPlanContributionsByEmployer">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 contribution received by defined benefit plan from employer which increases plan 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e2709-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(ii)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 5: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4587-114921<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(01)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DefinedBenefitPlanContributionsByEmployer</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems</td>
</tr>
<tr>
<td style="padding-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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 percentage of employee gross pay the employee may contribute 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_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Defined Contribution Plan, Minimum Annual Contributions Per Employee, Percent</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;">virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_virc_DefinedContributionPlanNumberOfCommonSharesHeld">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Defined Contribution Plan, Number of Common Shares 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;">virc_DefinedContributionPlanNumberOfCommonSharesHeld</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_RetirementPlanSponsorLocationAxis=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;">us-gaap_RetirementPlanSponsorLocationAxis=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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>52
<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="idm139956387428256">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Warranty (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward', window );"><strong>Warranty claim activity</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_ProductWarrantyAccrual', window );">Beginning balance</a></td>
<td class="nump">$ 600<span></span>
</td>
<td class="nump">$ 600<span></span>
</td>
</tr>
<tr class="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</a></td>
<td class="nump">41<span></span>
</td>
<td class="nump">34<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyExpense', window );">Costs incurred</a></td>
<td class="num">(41)<span></span>
</td>
<td class="num">(34)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Ending balance</a></td>
<td class="nump">$ 600<span></span>
</td>
<td class="nump">$ 600<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]</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_virc_WarrantyLineItems', window );"><strong>Warranty [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_virc_ProductWarranty', window );">Product warranty period</a></td>
<td class="text">10 years<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_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 roll forward is a reconciliation of a concept from the beginning of a period to the end of a 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;">us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward</td>
</tr>
<tr>
<td style="padding-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_ProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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.</p></div>
<a href="javascript: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.15(5))<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 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<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 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<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_ProductWarrantyAccrual</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 expense charged against earnings for the period pertaining to standard and extended warranties on the entity's goods and services granted to customers.</p></div>
<a href="javascript: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><br>Reference 2: 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,4))<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_ProductWarrantyExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_virc_ProductWarranty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Product warranty.</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;">virc_ProductWarranty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_virc_WarrantyLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Warranty [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;">virc_WarrantyLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</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_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>53
<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="idm139956387482928">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Contingencies (Details) - Maximum<br></strong></div></th>
<th class="th">
<div>Apr. 30, 2023 </div>
<div>USD ($)</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_srt_RangeAxis=srt_MaximumMember', window );">Product Liability [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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></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_virc_SelfInsuranceRetention', window );">Self insurance retention</a></td>
<td class="nump">$ 250,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Workers compensation Liability Insurance [Member]</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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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_virc_SelfInsuranceRetention', window );">Self insurance retention</a></td>
<td class="nump">250,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">General Liability Loss</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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></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_virc_SelfInsuranceRetention', window );">Self insurance retention</a></td>
<td class="nump">50,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Automobile Liability Loss [Member]</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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [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_virc_SelfInsuranceRetention', window );">Self insurance retention</a></td>
<td class="nump">50,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_RangeAxis=srt_MaximumMember', window );">Loss Liability [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_LossContingenciesLineItems', window );"><strong>Loss Contingencies [Line Items]</strong></a></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_virc_SelfInsuranceRetention', window );">Self insurance retention</a></td>
<td class="nump">$ 30,000,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LossContingenciesLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_LossContingenciesLineItems</td>
</tr>
<tr>
<td style="padding-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_virc_SelfInsuranceRetention">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Self Insurance Retention</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;">virc_SelfInsuranceRetention</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_srt_ProductOrServiceAxis=virc_ProductLiabilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_ProductLiabilityMember</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=virc_WorkerscompensationLiabilityInsuranceMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_WorkerscompensationLiabilityInsuranceMember</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=virc_GeneralLiabilityLossMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_GeneralLiabilityLossMember</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=virc_AutomobileLiabilityLossMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_AutomobileLiabilityLossMember</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=virc_LossLiabilityMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=virc_LossLiabilityMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>54
<FILENAME>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="idm139956391237584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Delivery Costs (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Apr. 30, 2023</div></th>
<th class="th"><div>Apr. 30, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherIncomeAndExpensesAbstract', window );"><strong>Other Income and Expenses [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_virc_ShippingAndClassroomDeliveryCosts', window );">Shipping and classroom delivery costs</a></td>
<td class="nump">$ 3,343,000<span></span>
</td>
<td class="nump">$ 3,254,000<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OtherIncomeAndExpensesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_OtherIncomeAndExpensesAbstract</td>
</tr>
<tr>
<td style="padding-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_virc_ShippingAndClassroomDeliveryCosts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Shipping And Classroom Delivery 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;">virc_ShippingAndClassroomDeliveryCosts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>virc_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>55
<FILENAME>virc-20230430_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  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:us-gaap="http://fasb.org/us-gaap/2022"
  xmlns:virc="http://www.virco.com/20230430"
  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="virc-20230430.xsd" xlink:type="simple"/>
    <context id="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i46f3fa4db1224bdcaea94369c6d96157_I20230604">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
        </entity>
        <period>
            <instant>2023-06-04</instant>
        </period>
    </context>
    <context id="id96edf3311854e0493cec4b46a1f41ce_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="ied655037fda84d3f8b3feb75fdddb53f_I20230131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i27a46d3621b9440b82c682a1833d8234_I20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
        </entity>
        <period>
            <instant>2022-04-30</instant>
        </period>
    </context>
    <context id="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="i35924208d3d746c491b0ea2b2e4d7e29_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i667c7d8bd763413abd796ad88c8c5ee5_I20230131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</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="i52f18ac9d41d46c1b4576913f0de57f0_I20230131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</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="i9f3fd36ef804401099a0e750874625c5_I20230131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</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="i530ce63704924b638cd8c6149473e0ad_I20230131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</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="if89b5f15562444589f2f0392b7e37c7b_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="ia7c69e53c96e4b93a110462966b1044c_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i256c053448c64068bcfe4b5edb8fbde9_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i6331f468c1814d99be11cc79ece13034_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="ibf3a5d830a114294ba4d2e0cdabd77a6_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i6bf9009158994bc092f61b9ad38652f2_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i3ed6c2f2b1f5445eb2398cc14cbf6529_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i52ba23c1caab43049763eb8c7c05905b_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</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="i31bda8c8ea4842e681e8ef1dd7e18618_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</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="i32b42948e1b446038414c0e7223ff341_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</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="ifc993466e76e4fb891805f5b996dc151_I20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</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="ibdec95bb07e941ebb2d1d770b5bfc78e_D20220201-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="i859cef3d71ce4197917e115a33760a0c_D20220201-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="i2e0b8b7b8b284ac78c8f0f4961f42d6c_D20220201-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="if6576d858fc646ff91951e75237ea454_I20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-04-30</instant>
        </period>
    </context>
    <context id="ia7b3209a5d5a4a70ad9bf906a779f3f1_I20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-04-30</instant>
        </period>
    </context>
    <context id="ic325352fd9224629a7d5d63a7f9d3d86_I20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-04-30</instant>
        </period>
    </context>
    <context id="i635c7842e4f14afd951d730fbd2d02ae_I20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AccumulatedOtherComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-04-30</instant>
        </period>
    </context>
    <context id="iebf10b00d5b540539b5c9836dce200af_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i2ab2cbba95b540a8a4bb11033f99aadd_D20210201-20220131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-02-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i756b4b4dd7e6405e8e3d1e8fbc4e6c8f_D20220201-20230131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="i7a2f7b44cab3414e801e207554b6cb6a_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="ia4625a145f054c6f944f092eabe7972e_I20230131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="ie31f7af831874309a231e49017ef6fd3_I20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-04-30</instant>
        </period>
    </context>
    <context id="i817023d33a2c4b06a2faf3fe4bc4a5f3_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">virc:OtherDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="if6190fa3b4a14376ba8b68fa6e2be828_I20230131">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">virc:OtherDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="if29a68af9f094831869c15d74305d73e_I20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">virc:OtherDebtMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-04-30</instant>
        </period>
    </context>
    <context id="ic99f7b405719435fb21df998ae2ec444_I20210928">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
        </entity>
        <period>
            <instant>2021-09-28</instant>
        </period>
    </context>
    <context id="ifb78696c77304063b0f49344b285068a_I20210928">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="virc:DebtInstrumentCovenantPeriodAxis">virc:CovenantPeriod1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-09-28</instant>
        </period>
    </context>
    <context id="icb21eca85b6647d0a41413ec21a03897_I20210928">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-09-28</instant>
        </period>
    </context>
    <context id="ia43dde74291e440297c825b0c65e0613_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i79d1afc994cc438b9333f2182b2eb286_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:AccountsReceivableMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i62a77fa9904b43519b12ab5521fbfc50_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">virc:InventoryMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i2ab1ef2c4f7047d48c0303f65520f6fd_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:InventoriesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i5ea441bc5c934be682f32a5baa341109_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">virc:EquipmentLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="ie06315b6326d4b3d98afbe1efd76fde7_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">virc:EquipmentLoanMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:DebtInstrumentAxis">virc:AmendedAndRestatedCreditAgreementMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i9665e52c433240ef84f46d104164bd2b_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="ie35abe19f9f1469a8eae1c647f7c08ef_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis">virc:AlternateBaseRateLoansMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i08ef98998f094e798fa98b2f252dc5d6_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:TradingActivityByTypeAxis">virc:AlternateBaseRateLoansMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i039bec46eeb14855a38dcf9d8f5abc84_I20170831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MortgagesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2017-08-31</instant>
        </period>
    </context>
    <context id="i10fa72e190f1458da0355bf56b31fc96_D20170801-20170831">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MortgagesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2017-08-01</startDate>
            <endDate>2017-08-31</endDate>
        </period>
    </context>
    <context id="iff2c0793561f4e4984581d42b5d8aec1_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:MortgagesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i128c9fd6ffdd4691a605fc1dfd1e983b_D20230519-20230519">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">virc:PNCMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-05-19</startDate>
            <endDate>2023-05-19</endDate>
        </period>
    </context>
    <context id="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:SubsequentEventTypeAxis">us-gaap:SubsequentEventMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-05-19</instant>
        </period>
    </context>
    <context id="ic51b052edc494cff983b99a420d39ac3_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">virc:StockIncentivePlan2019Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i3c3e40b19dff4d9b80a30d55daa278cc_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">virc:StockIncentivePlan2019Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="idce494d0db0c4f8489d6ce35a8ab9ac9_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i11b048777b3e42b1866ea0d27d2722d7_D20220201-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:CostOfSalesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="i9874a256218949168c3a713134d081a8_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="ie7278e4f07694d6b92aa5b3f38b98f5c_D20220201-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:IncomeStatementLocationAxis">us-gaap:SellingGeneralAndAdministrativeExpensesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="ic58191435f9940b8aa96e24508179cf1_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="if7c191c5122144d6bd53e87dd766024d_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockUnitsRSUMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanTypeAxis">us-gaap:PensionPlansDefinedBenefitMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i0afd8d5b22d746a699be9a50df797a36_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="iddb903a8928b42768b5ce48dbcfc0fa8_I20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-04-30</instant>
        </period>
    </context>
    <context id="iae9a75dced8442fea285b7df23400c30_D20220201-20220430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:RetirementPlanSponsorLocationAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-02-01</startDate>
            <endDate>2022-04-30</endDate>
        </period>
    </context>
    <context id="i9e44ea096ef14842a0c5fcb454869591_D20230201-20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2023-02-01</startDate>
            <endDate>2023-04-30</endDate>
        </period>
    </context>
    <context id="i7c87a2799d93477db744937a9581ada5_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:ProductLiabilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i50fc8f506f0e4aa5b2177398ab79ad82_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:WorkerscompensationLiabilityInsuranceMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i1e68fc9de49749c2bdd567007cdbb5c2_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:GeneralLiabilityLossMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="ic0190406847046579553da1fad6bd7c0_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:AutomobileLiabilityLossMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <context id="i72ec33ce05b649ccb94d1610bf10ad39_I20230430">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000751365</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">virc:LossLiabilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-04-30</instant>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="usdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <unit id="basispoint">
        <measure>virc:basisPoint</measure>
    </unit>
    <dei:EntityCentralIndexKey
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y18zLTEtMS0xLTQ4NTAy_32c6fa8b-e10d-4c3a-b69e-187a9b449147">0000751365</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y182LTEtMS0xLTQ4NTAy_856ff50d-1e99-4438-81d1-1fa471efa10a">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y183LTEtMS0xLTQ4NTAy_0664091a-6f9f-4118-98b9-ebc1e0df58a4">2024</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y184LTEtMS0xLTQ4NTAy_fdeacaee-c07d-4a77-8c41-8bd5253ea231">Q1</dei:DocumentFiscalPeriodFocus>
    <dei:CurrentFiscalYearEndDate
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80L2ZyYWc6ZDkxNzdjNDRjZTQ5NDYwYmI4YTJmMGU4MTM1YWY1NzEvdGFibGU6ZGNiNjVlZWQ3NWM1NGEwMDgwZmJjYzNkZmU5YWU2NmMvdGFibGVyYW5nZTpkY2I2NWVlZDc1YzU0YTAwODBmYmNjM2RmZTlhZTY2Y185LTEtMS0xLTQ4NTAy_084c3e21-1f6f-489c-8e05-aeefa290237b">--01-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentType
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6NTkwZGRhNTVkNjJkNDQ3ZmIwYzkzODYwZjE4M2RjZDcvdGFibGVyYW5nZTo1OTBkZGE1NWQ2MmQ0NDdmYjBjOTM4NjBmMTgzZGNkN18wLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246OWMwNWE5ZGFmYmEyNDRkZmJhZTRkNzYyM2Y5MmJhYzRfOQ_1db97d1b-f642-48f5-9ffb-e5d352d422d3">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6NWRjYjhiMzU2OWZiNDk2NDliYzFmZmQwZDUxN2MyNTYvdGFibGVyYW5nZTo1ZGNiOGIzNTY5ZmI0OTY0OWJjMWZmZDBkNTE3YzI1Nl8wLTAtMS0xLTQ4NTAy_ea657cd3-f442-44c8-befa-5a23766ffcfb">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xMjA_7a4a91d6-e458-4004-9d96-0fb8f3e3c769">2023-04-30</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6ZGM2MjE4MGM5NTFjNDRkMWFmODNlMTI1Yjk5ZDc0NjUvdGFibGVyYW5nZTpkYzYyMTgwYzk1MWM0NGQxYWY4M2UxMjViOTlkNzQ2NV8wLTAtMS0xLTQ4NTAy_57c8ea46-c8b0-48c9-ad35-a7110cecad03">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8yMDI_59d0d97a-10bb-4e24-a445-f4eda48fb074">1-8777</dei:EntityFileNumber>
    <dei:EntityRegistrantName
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6OTMyODc0MzMyZGQxNDU5ZGIyOTFlZjgyZmRlYzMxNzkvdGFibGVyYW5nZTo5MzI4NzQzMzJkZDE0NTlkYjI5MWVmODJmZGVjMzE3OV8wLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246MTdkMzJkYjE2ZWEzNDViNjk0MWZiMGFlNjUyNDIyYWNfNQ_3ff61edf-e039-4b52-b56b-48e6fde6c4d1">VIRCO MFG. CORPORATION</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8wLTAtMS0xLTQ4NTAy_135fa36f-1c35-45ea-89ba-d03675c6119c">DE</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8wLTItMS0xLTQ4NTAy_eb585405-e448-4c91-ab07-7896d7e03c30">95-1613718</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8zLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246NzhlNjgzZjMxYWNkNGM1MDk5NjNiZDBiNTAxNWUyMzVfNA_8efea0ca-41a1-4f36-808a-618c2659decb">2027 Harpers Way</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8zLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246NzhlNjgzZjMxYWNkNGM1MDk5NjNiZDBiNTAxNWUyMzVfOA_d78346cd-466a-4cf9-8693-c7623e42cf47">Torrance</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8zLTAtMS0xLTQ4NTAyL3RleHRyZWdpb246NzhlNjgzZjMxYWNkNGM1MDk5NjNiZDBiNTAxNWUyMzVfMTI_8f088fc6-5939-4854-82fa-822aacecc01c">CA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YWNhNzdhMWZmNDIzNGRlNGExMmUwODQ4M2I1ZWZjYmYvdGFibGVyYW5nZTphY2E3N2ExZmY0MjM0ZGU0YTEyZTA4NDgzYjVlZmNiZl8zLTItMS0xLTQ4NTAy_7ed7798b-cb6a-405c-91fc-1091d6d7e49b">90501</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8yNjU_b3a796a5-0d0d-4d6b-8bb0-941ea992948a">310</dei:CityAreaCode>
    <dei:LocalPhoneNumber
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTQ4_f05b308d-7a75-46ac-927e-8a41127fdaf0">533-0474</dei:LocalPhoneNumber>
    <dei:Security12bTitle
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6MjQxNDE2NjdlMmU3NDU5NDg3NDNhNDZlMTEyY2ZkYTEvdGFibGVyYW5nZToyNDE0MTY2N2UyZTc0NTk0ODc0M2E0NmUxMTJjZmRhMV8yLTAtMS0xLTQ4NTAy_a8ff2f70-1275-4b9a-a274-26ff3925df9d">Common Stock, $0.01 par value per share</dei:Security12bTitle>
    <dei:TradingSymbol
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6MjQxNDE2NjdlMmU3NDU5NDg3NDNhNDZlMTEyY2ZkYTEvdGFibGVyYW5nZToyNDE0MTY2N2UyZTc0NTk0ODc0M2E0NmUxMTJjZmRhMV8yLTItMS0xLTQ4NTAy_8e913012-906d-4300-a8db-f1d70af81458">VIRC</dei:TradingSymbol>
    <dei:SecurityExchangeName
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6MjQxNDE2NjdlMmU3NDU5NDg3NDNhNDZlMTEyY2ZkYTEvdGFibGVyYW5nZToyNDE0MTY2N2UyZTc0NTk0ODc0M2E0NmUxMTJjZmRhMV8yLTQtMS0xLTQ4NTAy_36c8369b-22ad-460b-a456-6c8784af2371">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTQ5_fee6e99c-bc09-46d5-8245-5d08a0146e6c">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTUw_e43e2cf7-3caa-4e22-887a-159bf434e228">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YTNmZWJhMTczMTVjNGIzYWE1MDMyMzc3YzA3YTBiMDgvdGFibGVyYW5nZTphM2ZlYmExNzMxNWM0YjNhYTUwMzIzNzdjMDdhMGIwOF8xLTAtMS0xLTQ4NTAy_47df378d-e5ab-4eac-95eb-d0cbc9a90a84">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YTNmZWJhMTczMTVjNGIzYWE1MDMyMzc3YzA3YTBiMDgvdGFibGVyYW5nZTphM2ZlYmExNzMxNWM0YjNhYTUwMzIzNzdjMDdhMGIwOF8xLTYtMS0xLTQ4NTAy_21137756-6e29-4a61-8a44-ac75622b6ce5">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGFibGU6YTNmZWJhMTczMTVjNGIzYWE1MDMyMzc3YzA3YTBiMDgvdGFibGVyYW5nZTphM2ZlYmExNzMxNWM0YjNhYTUwMzIzNzdjMDdhMGIwOF8yLTYtMS0xLTQ4NTAy_dc9a10f1-9d21-4a10-9f1f-7278d50a6947">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTUx_f785a34e-8be4-40d3-a88c-2d51262e4229">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i46f3fa4db1224bdcaea94369c6d96157_I20230604"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xL2ZyYWc6NDEwYWNkMjE1N2I1NGM3OTkxMzk4MWY2ZWQyOWQwN2YvdGV4dHJlZ2lvbjo0MTBhY2QyMTU3YjU0Yzc5OTEzOTgxZjZlZDI5ZDA3Zl8xOTEz_33e86517-bec1-4bb2-b744-4072a7127508"
      unitRef="shares">16210985</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:Cash
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNS0xLTEtMS00ODUwMg_f1c624c4-379b-43ec-bb25-27c2f5aec02e"
      unitRef="usd">625000</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNS0zLTEtMS00ODUwMg_adbcc9be-6418-4723-8eab-819df406252c"
      unitRef="usd">1057000</us-gaap:Cash>
    <us-gaap:Cash
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNS01LTEtMS00ODUwMg_08f87e39-8f50-4848-8dbf-a4dfbe568da9"
      unitRef="usd">539000</us-gaap:Cash>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNi0xLTEtMS00ODUwMg_6b69e340-d84d-49aa-8e11-3d10c7ebdd80"
      unitRef="usd">15524000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNi0zLTEtMS00ODUwMg_6994753b-f0ec-4ece-be50-eb57b2ca96de"
      unitRef="usd">18435000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNi01LTEtMS00ODUwMg_b10cb881-b501-4983-a8ab-3590be4696be"
      unitRef="usd">13326000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNy0xLTEtMS00ODUwMg_4be96dea-6e08-4a65-a242-56b5f0f341b4"
      unitRef="usd">35000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNy0zLTEtMS00ODUwMg_f80c7fef-867b-4c38-b4d1-4cfa020568ca"
      unitRef="usd">68000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:OtherReceivablesNetCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfNy01LTEtMS00ODUwMg_b82c7432-5bcf-4b30-ad78-c86bcba00920"
      unitRef="usd">85000</us-gaap:OtherReceivablesNetCurrent>
    <us-gaap:IncomeTaxesReceivable
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOC0xLTEtMS00ODUwMg_021996e9-6432-4568-881f-95430f394941"
      unitRef="usd">321000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:IncomeTaxesReceivable
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOC0zLTEtMS00ODUwMg_ed953c89-54f9-4d63-bfca-ca00791af196"
      unitRef="usd">19000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:IncomeTaxesReceivable
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOC01LTEtMS00ODUwMg_0ed0aaf9-d693-437f-923e-f96339757062"
      unitRef="usd">135000</us-gaap:IncomeTaxesReceivable>
    <us-gaap:InventoryNet
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOS0xLTEtMS00ODUwMg_eedff725-7afc-4613-8cc9-43adc21cebef"
      unitRef="usd">85640000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOS0zLTEtMS00ODUwMg_1224e4e6-ddce-464b-ac17-24a113db1e21"
      unitRef="usd">67406000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfOS01LTEtMS00ODUwMg_0e67dcf9-ebdc-40fe-8b2c-7ff34363c638"
      unitRef="usd">66297000</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTAtMS0xLTEtNDg1MDI_46565b6b-4988-4b0f-a0bd-a66e8191a71f"
      unitRef="usd">2698000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTAtMy0xLTEtNDg1MDI_25da30c1-9c5d-4de0-9d10-6591ebf4b54c"
      unitRef="usd">2083000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTAtNS0xLTEtNDg1MDI_1cc80fc4-f8cc-47c1-9899-a88b86018abc"
      unitRef="usd">2156000</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTEtMS0xLTEtNDg1MDI_861b9317-bcb3-4395-b3d3-ad8d6ca75b50"
      unitRef="usd">104843000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTEtMy0xLTEtNDg1MDI_2c854281-0875-4f14-907f-e12ff734b2f5"
      unitRef="usd">89068000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTEtNS0xLTEtNDg1MDI_8538b6a1-be2d-475d-9b48-503e5b36d357"
      unitRef="usd">82538000</us-gaap:AssetsCurrent>
    <us-gaap:Land
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTQtMS0xLTEtNDg1MDI_92efd807-785b-4b8e-b2df-92304a94d27d"
      unitRef="usd">3731000</us-gaap:Land>
    <us-gaap:Land
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTQtMy0xLTEtNDg1MDI_2b7afb91-0e29-4752-8209-99d60dffa74e"
      unitRef="usd">3731000</us-gaap:Land>
    <us-gaap:Land
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTQtNS0xLTEtNDg1MDI_29cd6254-ab94-4c85-9816-e395d3571a11"
      unitRef="usd">3731000</us-gaap:Land>
    <us-gaap:LandImprovements
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTUtMS0xLTEtNDg1MDI_1e8fbbfc-b602-4f2b-bb46-e2c0ba036db0"
      unitRef="usd">686000</us-gaap:LandImprovements>
    <us-gaap:LandImprovements
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTUtMy0xLTEtNDg1MDI_0a5c0ae0-79fb-4398-848d-868cb47a1a58"
      unitRef="usd">686000</us-gaap:LandImprovements>
    <us-gaap:LandImprovements
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTUtNS0xLTEtNDg1MDI_54ae9d8a-07b5-4259-827c-b8311b23c297"
      unitRef="usd">653000</us-gaap:LandImprovements>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTYtMS0xLTEtNDg1MDI_2cd50b7e-eba6-4797-9182-d78322817c65"
      unitRef="usd">51391000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTYtMy0xLTEtNDg1MDI_f9e56d4a-423f-44f1-a52e-f90ad0e09312"
      unitRef="usd">51310000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTYtNS0xLTEtNDg1MDI_347bb8d6-3fe9-4135-ab08-ec1d716420ea"
      unitRef="usd">51375000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTctMS0xLTEtNDg1MDI_30d7d334-8552-4078-bda7-d8b53c657de4"
      unitRef="usd">114655000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTctMy0xLTEtNDg1MDI_16a5e87e-ef81-49f6-9a4f-6013e85c0995"
      unitRef="usd">113662000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTctNS0xLTEtNDg1MDI_9a57a352-f58c-4977-8ebe-ca6dda5f7b77"
      unitRef="usd">113901000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTgtMS0xLTEtNDg1MDI_a7ad7c28-d6f9-431e-8028-a3d7159dc17b"
      unitRef="usd">983000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTgtMy0xLTEtNDg1MDI_672411ac-8d80-43ad-b3ea-751e12b481b0"
      unitRef="usd">983000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:LeaseholdImprovementsGross
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTgtNS0xLTEtNDg1MDI_db56c33c-d30e-41dc-b840-2684b17bfadc"
      unitRef="usd">1009000</us-gaap:LeaseholdImprovementsGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTktMS0xLTEtNDg1MDI_1f0b9ea0-466f-4938-b652-443c01e36f59"
      unitRef="usd">171446000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTktMy0xLTEtNDg1MDI_41655bba-ec2a-4a40-b591-ac86541220c6"
      unitRef="usd">170372000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMTktNS0xLTEtNDg1MDI_00d27056-2be1-4a67-bf9e-8d44384a0b61"
      unitRef="usd">170669000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjAtMS0xLTEtNDg1MDI_9898a1bf-7d67-48b6-9764-2adab8d2a9d3"
      unitRef="usd">136779000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjAtMy0xLTEtNDg1MDI_935f6885-f2a7-4e73-a609-b10094d8c53d"
      unitRef="usd">135810000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjAtNS0xLTEtNDg1MDI_456ccb56-e1b1-44d0-be20-ced22939cae0"
      unitRef="usd">135844000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjEtMS0xLTEtNDg1MDI_155bdd8a-de5e-4f9e-94b4-6bcd128f538f"
      unitRef="usd">34667000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjEtMy0xLTEtNDg1MDI_2c0560d3-1ff6-4476-8db8-45f5526d8871"
      unitRef="usd">34562000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjEtNS0xLTEtNDg1MDI_de0eaad3-3e0e-45ab-861a-45a4505a8842"
      unitRef="usd">34825000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjItMS0xLTEtNDg1MDI_81a9c6a9-cb7d-4616-b7d0-f2b841561d4c"
      unitRef="usd">9326000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjItMy0xLTEtNDg1MDI_217c5699-2791-4077-a193-0fa21a8a828e"
      unitRef="usd">10120000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjItNS0xLTEtNDg1MDI_784a9aa8-fbeb-4384-a5bc-6033cfb3a022"
      unitRef="usd">12892000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjMtMS0xLTEtNDg1MDI_5e16ef62-450c-4e82-b267-06ee22a5e57c"
      unitRef="usd">8249000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjMtMy0xLTEtNDg1MDI_fdf803d3-2541-4f02-b7ff-e1e6bb398ee8"
      unitRef="usd">7800000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:DeferredIncomeTaxAssetsNet
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjMtNS0xLTEtNDg1MDI_0aad399f-9f8d-445f-ba19-140f0fc7e0dc"
      unitRef="usd">769000</us-gaap:DeferredIncomeTaxAssetsNet>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjQtMS0xLTEtNDg1MDI_43d48910-8901-404d-a2bc-d86cf9a12505"
      unitRef="usd">8848000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjQtMy0xLTEtNDg1MDI_bb992b84-39a0-4ebb-8582-c516b6bc66b5"
      unitRef="usd">8576000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjQtNS0xLTEtNDg1MDI_fc61980d-ce1d-4906-8fc2-f784ce3954df"
      unitRef="usd">8383000</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjUtMS0xLTEtNDg1MDI_72845cfc-6cd2-4074-a824-cf2bf5607aaa"
      unitRef="usd">165933000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjUtMy0xLTEtNDg1MDI_595af7f0-dfcf-481b-b0a3-a203877bc4f8"
      unitRef="usd">150126000</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjM2ZTI4MmI4YWZiYTQ5MmZiNWE1NWM3MWQzOGYzYzZkL3RhYmxlcmFuZ2U6MzZlMjgyYjhhZmJhNDkyZmI1YTU1YzcxZDM4ZjNjNmRfMjUtNS0xLTEtNDg1MDI_d0d52731-fb94-4693-a37d-ff04446d6082"
      unitRef="usd">139407000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNS0xLTEtMS00ODUwMg_d8f3ced6-21ab-4111-9167-368d3a5a4823"
      unitRef="usd">23628000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNS0zLTEtMS00ODUwMg_94ea8d74-a6ea-4494-95c2-1508dab7a76e"
      unitRef="usd">19448000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNS01LTEtMS00ODUwMg_22035ea0-ff6e-47e1-8aa1-f06bb5848bc7"
      unitRef="usd">19437000</us-gaap:AccountsPayableCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNi0xLTEtMS00ODUwMg_2acc180b-da43-4619-9bda-8cf3a042f08f"
      unitRef="usd">9416000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNi0zLTEtMS00ODUwMg_a1972fb8-dc23-4c09-ac04-f25c30019855"
      unitRef="usd">9554000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNi01LTEtMS00ODUwMg_cf4103ab-5426-40a5-b14d-38a892ef29dd"
      unitRef="usd">5055000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNy0xLTEtMS00ODUwMg_e2f01a33-4954-43bb-b685-dc71b03e9fad"
      unitRef="usd">20362000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNy0zLTEtMS00ODUwMg_01ae65ef-4278-4135-8f33-1a637b5ef880"
      unitRef="usd">7360000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfNy01LTEtMS00ODUwMg_cfbc8119-954c-4c0b-8742-06d9bea20276"
      unitRef="usd">18905000</us-gaap:LongTermDebtCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOC0xLTEtMS00ODUwMg_10f882ce-d63a-420b-816e-d825d8fa72f2"
      unitRef="usd">5271000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOC0xLTEtMS00ODUwMg_74e876d5-c723-4a5f-a231-20a447f5be89"
      unitRef="usd">5271000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOC0zLTEtMS00ODUwMg_89c2a3ab-5c7a-46d7-af65-6d820f3fd7f0"
      unitRef="usd">5082000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOC01LTEtMS00ODUwMg_50b4e3f2-9a3b-4ed2-9a7e-edc541e3aea6"
      unitRef="usd">4769000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOS0xLTEtMS00ODUwMg_491d648c-e489-4a4e-bd05-8b917b575100"
      unitRef="usd">7868000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOS0zLTEtMS00ODUwMg_f3ca3e00-6ade-4926-90ae-8212f5c59e99"
      unitRef="usd">7081000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfOS01LTEtMS00ODUwMg_5fa2f06b-29a4-4e43-84d1-e97f8c51ea7d"
      unitRef="usd">6049000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTAtMS0xLTEtNDg1MDI_be3b9524-3b11-4d4e-87ac-c39bdc22bf26"
      unitRef="usd">66545000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTAtMy0xLTEtNDg1MDI_58582e15-cd5c-434a-8598-0d254670c509"
      unitRef="usd">48525000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTAtNS0xLTEtNDg1MDI_3aae8fcb-5505-4455-ae32-3fb223e8e151"
      unitRef="usd">54215000</us-gaap:LiabilitiesCurrent>
    <us-gaap:SelfInsuranceReserveNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTItMS0xLTEtNDg1MDI_630eca59-8621-46c0-b203-c3d04ebc2e9c"
      unitRef="usd">1251000</us-gaap:SelfInsuranceReserveNoncurrent>
    <us-gaap:SelfInsuranceReserveNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTItMy0xLTEtNDg1MDI_cc681cec-75ba-41f7-8736-3990a0516dc0"
      unitRef="usd">1050000</us-gaap:SelfInsuranceReserveNoncurrent>
    <us-gaap:SelfInsuranceReserveNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTItNS0xLTEtNDg1MDI_a5b096af-0b1a-42cb-b3dc-57a96572a07e"
      unitRef="usd">1533000</us-gaap:SelfInsuranceReserveNoncurrent>
    <virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTMtMS0xLTEtNDg1MDI_1712d914-4a7b-4231-8c8b-a400578f3dc6"
      unitRef="usd">10802000</virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent>
    <virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTMtMy0xLTEtNDg1MDI_683b21b1-6023-48c8-9448-4655138c96c4"
      unitRef="usd">10676000</virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent>
    <virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTMtNS0xLTEtNDg1MDI_daf347f4-6d36-4b05-837c-1b0f32c58c94"
      unitRef="usd">15332000</virc:PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTQtMS0xLTEtNDg1MDI_98e83371-0ac4-4950-8ceb-9835ad3e6fb9"
      unitRef="usd">85000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTQtMy0xLTEtNDg1MDI_820e94de-e0cc-43f0-a620-b7cf5f6d3a3d"
      unitRef="usd">79000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:AccruedIncomeTaxesNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTQtNS0xLTEtNDg1MDI_658c175d-9068-43ea-9c39-25260ddd0b90"
      unitRef="usd">76000</us-gaap:AccruedIncomeTaxesNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTUtMS0xLTEtNDg1MDI_874b910f-a8a8-449d-ba40-03a00d8d52a3"
      unitRef="usd">14323000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTUtMy0xLTEtNDg1MDI_913641db-1da2-44ce-99fb-71a65b00e9c0"
      unitRef="usd">14384000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTUtNS0xLTEtNDg1MDI_00d67843-10b7-47e7-b483-390169c7f41e"
      unitRef="usd">14564000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTYtMS0xLTEtNDg1MDI_3b67af16-ee39-434a-a5e1-21c4004a7fad"
      unitRef="usd">5648000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTYtMy0xLTEtNDg1MDI_22e9f48a-9214-429b-b30c-2e7037b84dd4"
      unitRef="usd">6796000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTYtNS0xLTEtNDg1MDI_0c15e223-8fa1-4f0f-aa4c-c3eb306a00e1"
      unitRef="usd">10297000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OtherAccruedLiabilitiesNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTctMS0xLTEtNDg1MDI_eb1c65b0-6302-484f-b9ed-603c609f5ded"
      unitRef="usd">557000</us-gaap:OtherAccruedLiabilitiesNoncurrent>
    <us-gaap:OtherAccruedLiabilitiesNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTctMy0xLTEtNDg1MDI_62e678b8-e9aa-42ef-951c-f61122c70fc9"
      unitRef="usd">555000</us-gaap:OtherAccruedLiabilitiesNoncurrent>
    <us-gaap:OtherAccruedLiabilitiesNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTctNS0xLTEtNDg1MDI_04f103b9-db87-4c14-ae01-1baabe63a680"
      unitRef="usd">640000</us-gaap:OtherAccruedLiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTgtMS0xLTEtNDg1MDI_75bd7595-05c7-481b-9513-f9b0bffe647a"
      unitRef="usd">32666000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTgtMy0xLTEtNDg1MDI_a20af8eb-4f10-4655-af47-9a5bb277440b"
      unitRef="usd">33540000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:LiabilitiesNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTgtNS0xLTEtNDg1MDI_964a1bb7-050b-4066-b108-9312f065f419"
      unitRef="usd">42442000</us-gaap:LiabilitiesNoncurrent>
    <us-gaap:CommitmentsAndContingencies
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTktMS0xLTEtNDg1MDI_e1e496ae-a9e6-484c-ba5e-1b54aecdb789"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTktMy0xLTEtNDg1MDI_d249e699-52ef-4f1f-85b4-f51bd7cfbd19"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMTktNS0xLTEtNDg1MDI_81ea4e42-7549-4e6f-9b3d-bf9e5315c2f7"
      unitRef="usd"
      xsi:nil="true"/>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8xNQ_03dc715a-1062-47e3-b042-74a2c166c1e5"
      unitRef="shares">3000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8xNQ_31984aed-65e2-4074-bf76-ff1939e1ac60"
      unitRef="shares">3000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8xNQ_5fe8ec90-d95a-46c0-8bdd-65e5f495f23e"
      unitRef="shares">3000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8yNg_24e1343f-e8ac-4fa0-b4d7-9584e1fae2da"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8yNg_3ab7c09d-3106-4a4a-8fc6-9bc1bd8bc7cf"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockParOrStatedValuePerShare
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl8yNg_d065f0bf-ea11-4948-8c80-aaf286187c7c"
      unitRef="usdPerShare">0.01</us-gaap:PreferredStockParOrStatedValuePerShare>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_1fb40d01-c745-4442-9a8f-554789b4c91c"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_292739fc-84f3-40ad-84e7-4095812ce50e"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_7bc57d0c-471c-4d1f-b07b-3e70d4b1f352"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_8c6b389c-4654-4602-8f0e-942a188e0a17"
      unitRef="shares">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_a66c3edd-502f-4086-bbca-e4d2be54d7e5"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjo3YjdlM2I2Nzk4MDY0MWY4ODc2OTIyMTcwZTlmOWUzNl80MA_da4063d4-d064-417a-b620-007b94475f3f"
      unitRef="shares">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockValue
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMS0xLTEtNDg1MDI_734b1e7c-3515-4470-8280-c407ca50cd65"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItMy0xLTEtNDg1MDI_9eb930ec-1077-4403-a960-01f0f9dece69"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjItNS0xLTEtNDg1MDI_dea807bd-f51d-4cb6-8f71-ceff95e40652"
      unitRef="usd">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8xNQ_15e46aad-1b3a-4b9a-ae05-49f98c6596f2"
      unitRef="shares">25000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8xNQ_16b520d3-ba92-47cb-9bc8-26be6f587f47"
      unitRef="shares">25000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8xNQ_52efdf6b-e3a9-4cf4-bb08-2f6706bfd05d"
      unitRef="shares">25000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8yNg_09fe1f2e-7c34-450e-9c0f-3db5bb6c1cfb"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8yNg_79a21cad-3294-4c94-8b07-2a45d01bb75d"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl8yNg_e6f96b7e-281e-47ee-99f5-e2871c1eeec7"
      unitRef="usdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl82Mw_16fd244d-7db3-401c-aead-af0bbc10b4d9"
      unitRef="shares">16210985</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl82Mw_60d37e6c-d5aa-4f23-bfec-cfacc3ababa3"
      unitRef="shares">16210985</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl82Mw_6153605a-ce88-4fc6-9bce-d9fb43b3494b"
      unitRef="shares">16210985</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl82Mw_b6b1134c-469b-456a-a43f-1561e344105f"
      unitRef="shares">16210985</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl85Mg_41760b3b-653f-4986-94f4-e90530d6484e"
      unitRef="shares">16102023</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMC0xLTEtNDg1MDIvdGV4dHJlZ2lvbjpjMWJkYzA3MDFkYTc0N2QzODAxNjU2NTA3ZDRjODU2Nl85Mg_496c6ff2-969e-4e62-aed2-a8f166c1e12b"
      unitRef="shares">16102023</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockValue
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMS0xLTEtNDg1MDI_06d4cfea-0121-4fa7-8c4f-2c158dc5cea2"
      unitRef="usd">162000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtMy0xLTEtNDg1MDI_92a1cbb3-33ca-4236-8261-9af7dcf551f4"
      unitRef="usd">162000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjQtNS0xLTEtNDg1MDI_38395b81-1ecb-47e0-a8ff-75181bbbacbe"
      unitRef="usd">161000</us-gaap:CommonStockValue>
    <us-gaap:AdditionalPaidInCapital
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjUtMS0xLTEtNDg1MDI_28b94dfe-a353-4528-840d-d94cad40af45"
      unitRef="usd">120993000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjUtMy0xLTEtNDg1MDI_d132f8a7-15ab-4ccc-b3f3-0f12d412430e"
      unitRef="usd">120890000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:AdditionalPaidInCapital
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjUtNS0xLTEtNDg1MDI_e2b0904d-b15a-4c38-bd60-c37c01b26909"
      unitRef="usd">120745000</us-gaap:AdditionalPaidInCapital>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjYtMS0xLTEtNDg1MDI_4bd72f6c-5f35-4def-a35a-cf0d7a252c4c"
      unitRef="usd">-52073000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjYtMy0xLTEtNDg1MDI_2b4e662b-04cf-49b4-a64f-3805c3ddbbdb"
      unitRef="usd">-50631000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjYtNS0xLTEtNDg1MDI_16b8e20f-8648-4256-bcc6-95b39933749e"
      unitRef="usd">-72262000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjctMS0xLTEtNDg1MDI_925bfa95-96f2-4aec-b34e-4c580bb822fb"
      unitRef="usd">-2360000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjctMy0xLTEtNDg1MDI_7130559d-591a-420f-89c1-054293b9f573"
      unitRef="usd">-2360000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjctNS0xLTEtNDg1MDI_5f74d16d-2777-49c6-b10b-2fc7a82758be"
      unitRef="usd">-5894000</us-gaap:AccumulatedOtherComprehensiveIncomeLossNetOfTax>
    <us-gaap:StockholdersEquity
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjgtMS0xLTEtNDg1MDI_3d2fc971-e185-4811-9126-e6602229b4bd"
      unitRef="usd">66722000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjgtMy0xLTEtNDg1MDI_ad5f9ae1-6a92-4ee1-84ca-42dfe93adebf"
      unitRef="usd">68061000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjgtNS0xLTEtNDg1MDI_a6737cde-49ab-4ca4-8409-d4512f56c188"
      unitRef="usd">42750000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjktMS0xLTEtNDg1MDI_ff9b06c2-3b3d-4bd8-b915-28bf20aa1379"
      unitRef="usd">165933000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjktMy0xLTEtNDg1MDI_d376ffd0-8fcc-4e45-a451-e9e850453a43"
      unitRef="usd">150126000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8xOS9mcmFnOmY0NzkyNDEwNjI2ODQyOTI4MGE4YzQ1ZmEzZjU4MzQwL3RhYmxlOjI5NGE0MjMzYjE1MTRlYzJhYTJmNzI1ZGJiMjQyNmYyL3RhYmxlcmFuZ2U6Mjk0YTQyMzNiMTUxNGVjMmFhMmY3MjVkYmIyNDI2ZjJfMjktNS0xLTEtNDg1MDI_12602d61-b4b1-419b-a38e-b8be3a2ae079"
      unitRef="usd">139407000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMy0xLTEtMS00ODUwMg_13b36fff-3a2e-4ef9-98b2-b71f0058814d"
      unitRef="usd">34943000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMy0zLTEtMS00ODUwMg_53c46271-a67a-4cca-ad61-fc2fa2f3900d"
      unitRef="usd">32084000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNC0xLTEtMS00ODUwMg_1c9816a4-f331-4dad-b7d9-555ac26478cc"
      unitRef="usd">21741000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNC0zLTEtMS00ODUwMg_027da640-7307-4670-8c12-8c50063ab2ff"
      unitRef="usd">22377000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNS0xLTEtMS00ODUwMg_45f27c58-328f-4218-be13-63f36fdf890a"
      unitRef="usd">13202000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNS0zLTEtMS00ODUwMg_07676624-bf5c-44db-9c34-0ed6eee212e4"
      unitRef="usd">9707000</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNi0xLTEtMS00ODUwMg_04c37db0-13d8-49cc-ad72-5315f3bf6024"
      unitRef="usd">14514000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfNi0zLTEtMS00ODUwMg_8d3cdf0e-d41c-4ed4-8397-081f9ea4e398"
      unitRef="usd">14451000</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfOS0xLTEtMS00ODUwMg_e5fb76a7-ad0e-4f08-b686-c07f60c1320c"
      unitRef="usd">-1312000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfOS0zLTEtMS00ODUwMg_46b1ffa4-769e-42aa-bc29-82be163963fa"
      unitRef="usd">-4744000</us-gaap:OperatingIncomeLoss>
    <us-gaap:UnrealizedGainLossOnInvestments
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTAtMS0xLTEtNDg1MDI_9cbdc110-d310-4e6a-8ade-a31ddc5f0c3e"
      unitRef="usd">299000</us-gaap:UnrealizedGainLossOnInvestments>
    <us-gaap:UnrealizedGainLossOnInvestments
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTAtMy0xLTEtNDg1MDI_a4717eac-bb40-4df1-9808-8e9d95d54cec"
      unitRef="usd">0</us-gaap:UnrealizedGainLossOnInvestments>
    <us-gaap:NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTEtMS0xLTEtNDg1MDI_b8b9291e-4957-4de4-9137-32022842dd7c"
      unitRef="usd">161000</us-gaap:NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent>
    <us-gaap:NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTEtMy0xLTEtNDg1MDI_cb1dc227-e4e4-4914-b7b4-c5b677b158a8"
      unitRef="usd">195000</us-gaap:NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent>
    <us-gaap:InterestExpense
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTItMS0xLTEtNDg1MDI_2c370ac5-2728-4c23-a63b-ea5c5e7a4c81"
      unitRef="usd">712000</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTItMy0xLTEtNDg1MDI_ec95a769-5b3c-4f35-a816-d994407b7b90"
      unitRef="usd">427000</us-gaap:InterestExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTMtMS0xLTEtNDg1MDI_0be0d232-341d-4e0d-bde1-30f66ba1abe1"
      unitRef="usd">-1886000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTMtMy0xLTEtNDg1MDI_d906f11a-00b4-4273-9c95-aecb4b95a13f"
      unitRef="usd">-5366000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTQtMS0xLTEtNDg1MDI_afbfdbeb-81fc-4ff0-940e-f8302a0e723f"
      unitRef="usd">-444000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTQtMy0xLTEtNDg1MDI_89c7f003-c399-4635-9ef9-e52e2d4c3241"
      unitRef="usd">-282000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTUtMS0xLTEtNDg1MDI_d4157ad9-e220-431b-b46f-b2715ef0e411"
      unitRef="usd">-1442000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTUtMy0xLTEtNDg1MDI_baec872c-f6a5-4419-8ab7-f95aa6f539d6"
      unitRef="usd">-5084000</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTktMS0xLTEtNDg1MDI_6815404d-f926-4b3b-93e9-a3c85583666b"
      unitRef="usdPerShare">-0.09</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMTktMy0xLTEtNDg1MDI_ae3ae2fc-2d1d-4389-99a6-6673c9d51e71"
      unitRef="usdPerShare">-0.32</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjAtMS0xLTEtNDg1MDI_402a0100-3926-436d-9202-ebd7e5922982"
      unitRef="usdPerShare">-0.09</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjAtMy0xLTEtNDg1MDI_6b63bcea-5b30-4ab2-a22b-436b2402c9d0"
      unitRef="usdPerShare">-0.32</us-gaap:EarningsPerShareDiluted>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjItMS0xLTEtNDg1MDI_079bd9b3-7dad-4415-8b9e-ffceb35c016f"
      unitRef="shares">16211000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjItMS0xLTEtNDg1MDI_a999b2d3-49f6-4cd0-a4fb-e1ec29868926"
      unitRef="shares">16211000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjItMy0xLTEtNDg1MDI_c9493780-cb70-4121-90ab-02560ac117b9"
      unitRef="shares">16033000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjMtMS0xLTEtNDg1MDI_beece7f8-413e-4139-86e4-e658da724829"
      unitRef="shares">16211000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yMi9mcmFnOjEwMGQ5NzEwMzMxZDQxY2U4ZjhhYTVmZGQ2NzFhZTAyL3RhYmxlOjdkZGM3MTUzYjEwODQ0YTc4ZDk1YzI4NGI2MzlhNTQwL3RhYmxlcmFuZ2U6N2RkYzcxNTNiMTA4NDRhNzhkOTVjMjg0YjYzOWE1NDBfMjMtMy0xLTEtNDg1MDI_4bbceffc-db93-4cfe-992b-8c9de88388fb"
      unitRef="shares">16033000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:NetIncomeLoss
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNC0xLTEtMS00ODUwMg_d4157ad9-e220-431b-b46f-b2715ef0e411"
      unitRef="usd">-1442000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNC0zLTEtMS00ODUwMg_baec872c-f6a5-4419-8ab7-f95aa6f539d6"
      unitRef="usd">-5084000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNi0wLTEtMS00ODUwMi90ZXh0cmVnaW9uOmYxZjQzMzMwMWQ2YTQwN2RhZDA0MTFkODAwNDk2M2EwXzQ3_60d0ea29-e895-4134-b35a-3db83ccfb562"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNi0wLTEtMS00ODUwMi90ZXh0cmVnaW9uOmYxZjQzMzMwMWQ2YTQwN2RhZDA0MTFkODAwNDk2M2EwXzU1_f8166a67-d460-4c2a-8b71-413c5a13e6cf"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNi0xLTEtMS00ODUwMg_4621070a-5ff2-4041-8702-1c364f9db94b"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNi0zLTEtMS00ODUwMg_ded0e29b-c15f-452e-9fb0-0654ac0b57e0"
      unitRef="usd">-135000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNy0xLTEtMS00ODUwMg_b4cd4f5e-766e-4252-ac1c-e0dbdda01522"
      unitRef="usd">-1442000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8yOC9mcmFnOjBiNDM1NjNkZDM5ZTRmODJhYTExN2U2ZmEwYjBmMmE0L3RhYmxlOjE1YTI3ZTIwN2FjNDQ1Njc5MDhjNTlkM2M2MDdlYmE2L3RhYmxlcmFuZ2U6MTVhMjdlMjA3YWM0NDU2NzkwOGM1OWQzYzYwN2ViYTZfNy0zLTEtMS00ODUwMg_43b142d5-0655-49eb-8bd1-bf0715f4e2a6"
      unitRef="usd">-4949000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:NetIncomeLoss
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNC0xLTEtMS00ODUwMg_7eace05f-1882-46a0-aa0c-dc73e4b55f33"
      unitRef="usd">-1442000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNC0zLTEtMS00ODUwMg_b05c31e1-1118-493b-8fa5-e5726a6db0fa"
      unitRef="usd">-5084000</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNi0xLTEtMS00ODUwMg_0d17413f-54ce-4663-a5de-58a3413c710d"
      unitRef="usd">1195000</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNi0zLTEtMS00ODUwMg_6655ba79-29e9-4435-b24f-52575f726ed4"
      unitRef="usd">1129000</us-gaap:DepreciationDepletionAndAmortization>
    <virc:NoncashRentExpense
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNy0xLTEtMS00ODUwMg_da1bf429-a844-45fe-8628-c1536e39222b"
      unitRef="usd">165000</virc:NoncashRentExpense>
    <virc:NoncashRentExpense
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfNy0zLTEtMS00ODUwMg_0d7e91c6-89fd-4812-81bf-c6a48a47f8c6"
      unitRef="usd">126000</virc:NoncashRentExpense>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfOC0xLTEtMS00ODUwMg_e2cdf39f-ad45-4c35-9811-0b038e80f4e1"
      unitRef="usd">15000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfOC0zLTEtMS00ODUwMg_f4f9787d-8f89-4a39-8100-4f45c29724c8"
      unitRef="usd">15000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfOS0xLTEtMS00ODUwMg_90199f80-db18-432c-8b19-cfe0cfa56bb9"
      unitRef="usd">26000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:AmortizationOfFinancingCosts
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfOS0zLTEtMS00ODUwMg_eddf5253-3110-4a0a-9021-63b71220b335"
      unitRef="usd">43000</us-gaap:AmortizationOfFinancingCosts>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTAtMS0xLTEtNDg1MDI_f4a8698e-ef32-4da6-b703-0895bf31afc8"
      unitRef="usd">-448000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:DeferredIncomeTaxesAndTaxCredits
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTAtMy0xLTEtNDg1MDI_8d631fa3-9132-40f2-ba18-1d3445bdc12e"
      unitRef="usd">-370000</us-gaap:DeferredIncomeTaxesAndTaxCredits>
    <us-gaap:ShareBasedCompensation
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTEtMS0xLTEtNDg1MDI_bfdac4d5-9ed4-44d3-b2cb-75f5a31324ce"
      unitRef="usd">103000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTEtMy0xLTEtNDg1MDI_b25a555b-33d2-4c42-a4b4-8df3dd4ed275"
      unitRef="usd">253000</us-gaap:ShareBasedCompensation>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTMtMS0xLTEtNDg1MDI_9f939021-9979-42d5-8493-2e0ed4b91b3b"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTMtMy0xLTEtNDg1MDI_6df4f161-9645-4a05-9779-171e5b9e3e6c"
      unitRef="usd">135000</us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax>
    <us-gaap:UnrealizedGainLossOnInvestments
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTQtMS0xLTEtNDg1MDI_bcd00f86-6d1c-499b-9fb9-59311755bdcf"
      unitRef="usd">299000</us-gaap:UnrealizedGainLossOnInvestments>
    <us-gaap:UnrealizedGainLossOnInvestments
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTQtMy0xLTEtNDg1MDI_d375fbb3-ab58-48c9-8500-45dad9a9f151"
      unitRef="usd">0</us-gaap:UnrealizedGainLossOnInvestments>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTctMS0xLTEtNDg1MDI_c6c76715-c093-42b0-8bc7-7fca52e7749b"
      unitRef="usd">-2896000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTctMy0xLTEtNDg1MDI_57153e5b-16f0-4138-8b0f-bd5a3ba62192"
      unitRef="usd">-4428000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInOtherReceivables
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTgtMS0xLTEtNDg1MDI_c7d0feba-cd8e-47ce-b2e5-97744a778adc"
      unitRef="usd">-33000</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInOtherReceivables
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTgtMy0xLTEtNDg1MDI_421f7a25-455b-40c3-a869-e75934cf7b61"
      unitRef="usd">-33000</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTktMS0xLTEtNDg1MDI_ae96c86e-45c7-4688-aff0-748417e19f63"
      unitRef="usd">18234000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMTktMy0xLTEtNDg1MDI_3824ad4e-ad4c-43ec-8811-b5e390fc902e"
      unitRef="usd">18924000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInIncomeTaxes
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjAtMS0xLTEtNDg1MDI_00d352d5-ad19-4b8e-b88a-b6e4f7e27dbc"
      unitRef="usd">-296000</us-gaap:IncreaseDecreaseInIncomeTaxes>
    <us-gaap:IncreaseDecreaseInIncomeTaxes
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjAtMy0xLTEtNDg1MDI_3fe90aec-ef41-4687-a566-c0063199b1ff"
      unitRef="usd">22000</us-gaap:IncreaseDecreaseInIncomeTaxes>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjEtMS0xLTEtNDg1MDI_0e6795a0-c3e8-48f4-b08e-e309500fc404"
      unitRef="usd">490000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjEtMy0xLTEtNDg1MDI_a32c22d8-ba35-4382-a5c9-400c9fe1ab2f"
      unitRef="usd">180000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjItMS0xLTEtNDg1MDI_50da2357-f9a8-4ca4-8a02-b6cc10cfd3d1"
      unitRef="usd">5391000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjItMy0xLTEtNDg1MDI_70c999d9-fa1b-4f3c-9e99-182d26979ec2"
      unitRef="usd">-340000</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjMtMS0xLTEtNDg1MDI_5eff4aed-9e49-4cbd-848a-448c824401b4"
      unitRef="usd">-11715000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjMtMy0xLTEtNDg1MDI_e5a794ed-5e0e-4f99-820a-c7cb08bb2c19"
      unitRef="usd">-18966000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjUtMS0xLTEtNDg1MDI_2e043e25-ec05-470c-a44e-b59ef7e1c363"
      unitRef="usd">1533000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjUtMy0xLTEtNDg1MDI_22550549-d52f-43e5-8d7f-376bb793ffd4"
      unitRef="usd">609000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjktMS0xLTEtNDg1MDI_19866ba0-e666-4a0c-833e-047d35335c74"
      unitRef="usd">-1533000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMjktMy0xLTEtNDg1MDI_052db150-ce36-4a99-ae4b-b2d2eeb620ef"
      unitRef="usd">-609000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzEtMS0xLTEtNDg1MDI_cbe154ae-6361-4b08-8cb8-8c4623eeac05"
      unitRef="usd">15241000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:ProceedsFromIssuanceOfLongTermDebt
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzEtMy0xLTEtNDg1MDI_0c035c82-e9e3-4f7b-9350-b33d103d3034"
      unitRef="usd">19759000</us-gaap:ProceedsFromIssuanceOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzItMS0xLTEtNDg1MDI_70b35957-ced8-4443-895d-2614f460c456"
      unitRef="usd">2300000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzItMy0xLTEtNDg1MDI_dfa8fb9e-736a-4d21-80d2-48b06c90f393"
      unitRef="usd">804000</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzMtMS0xLTEtNDg1MDI_5d2bc3ba-6d5b-4e9d-b274-07f7b22f5eb5"
      unitRef="usd">125000</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzMtMy0xLTEtNDg1MDI_325a8740-b4ed-44c3-a106-92a39c4478f1"
      unitRef="usd">200000</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzUtMS0xLTEtNDg1MDI_a00d906c-c5de-4f94-a971-999e3b5e2cf8"
      unitRef="usd">12816000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzUtMy0xLTEtNDg1MDI_f01b49f8-7b5e-40d7-b416-85af68db6e76"
      unitRef="usd">18755000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzctMS0xLTEtNDg1MDI_48ce79d8-5e50-40a2-8788-cc6275aa9cb0"
      unitRef="usd">-432000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzctMy0xLTEtNDg1MDI_36c17905-39e9-4ce7-8551-e48a8dc128c2"
      unitRef="usd">-820000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzgtMS0xLTEtNDg1MDI_4d8aa33c-9c93-4787-ac60-b9a4acb92802"
      unitRef="usd">1057000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i35924208d3d746c491b0ea2b2e4d7e29_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzgtMy0xLTEtNDg1MDI_05d29969-bd3b-431c-8fb0-49c9359fe3d6"
      unitRef="usd">1359000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzktMS0xLTEtNDg1MDI_eaf15324-97a0-43b6-a6c3-c3766bbe6b6d"
      unitRef="usd">625000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNC9mcmFnOjgwZWYwOWE0MjAzNzRlM2U4M2QwZjllNTk3MzRjYzI1L3RhYmxlOjU5MmY4YzdmYmU5NzRhZmRiZjZkNjg3NzQ4ZGFlYjlmL3RhYmxlcmFuZ2U6NTkyZjhjN2ZiZTk3NGFmZGJmNmQ2ODc3NDhkYWViOWZfMzktMy0xLTEtNDg1MDI_979094fc-ec84-4947-abc0-0029b6d088e3"
      unitRef="usd">539000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i667c7d8bd763413abd796ad88c8c5ee5_I20230131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy0yLTEtMS00ODUwMg_9e29d18c-2523-4b28-93e6-e110de0d1ba2"
      unitRef="shares">16210985</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i667c7d8bd763413abd796ad88c8c5ee5_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy00LTEtMS00ODUwMg_55b3abbb-4e5c-4301-b594-ac1a7efbabe1"
      unitRef="usd">162000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i52f18ac9d41d46c1b4576913f0de57f0_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy02LTEtMS00ODUwMg_fd80cff8-804f-4890-ad8b-71386217a649"
      unitRef="usd">120890000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i9f3fd36ef804401099a0e750874625c5_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy04LTEtMS00ODUwMg_75654074-5dea-4858-9c80-ba3c830b6ef0"
      unitRef="usd">-50631000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i530ce63704924b638cd8c6149473e0ad_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy0xMC0xLTEtNDg1MDI_4a7a79ad-4a8e-4dcc-8654-8327e91076c5"
      unitRef="usd">-2360000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfMy0xMi0xLTEtNDg1MDI_b8e8404d-1135-48a4-803f-926b2ea3af2c"
      unitRef="usd">68061000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="if89b5f15562444589f2f0392b7e37c7b_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNC04LTEtMS00ODUwMg_581c7beb-d791-4626-8ec3-45d755626c22"
      unitRef="usd">-1442000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNC0xMi0xLTEtNDg1MDI_253820ed-32b2-4875-a0ed-258424b2ed6a"
      unitRef="usd">-1442000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNi0wLTEtMS00ODUwMi90ZXh0cmVnaW9uOjQwZjFmYjlkNGUyZjRkMDA5ODQ0MzA4YTY1MGFhOWJjXzQ2_4fd1d840-667c-44f3-bf7f-04f75d69f89a"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ia7c69e53c96e4b93a110462966b1044c_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNi0xMC0xLTEtNDg1MDI_02c28b4e-390e-41b7-b6fc-f902830f49e9"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfNi0xMi0xLTEtNDg1MDI_adf46754-2502-40ce-a205-1c5b067301ab"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i256c053448c64068bcfe4b5edb8fbde9_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOC02LTEtMS00ODUwMg_a01285b9-ed85-4792-9ae1-140424ed53bb"
      unitRef="usd">103000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOC0xMi0xLTEtNDg1MDI_2979f952-3679-41d1-bdae-8b4d5a26e709"
      unitRef="usd">103000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i6331f468c1814d99be11cc79ece13034_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS0yLTEtMS00ODUwMg_e7852b37-e120-46aa-9384-3b77e1b0ad8d"
      unitRef="shares">16210985</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i6331f468c1814d99be11cc79ece13034_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS00LTEtMS00ODUwMg_9f1ccf77-289b-4b7e-a05d-26cb4db09a31"
      unitRef="usd">162000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ibf3a5d830a114294ba4d2e0cdabd77a6_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS02LTEtMS00ODUwMg_c6aad746-f2fe-4827-b810-7c749218223f"
      unitRef="usd">120993000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i6bf9009158994bc092f61b9ad38652f2_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS04LTEtMS00ODUwMg_31882200-dd26-4b3c-a726-c0bba4b4758a"
      unitRef="usd">-52073000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i3ed6c2f2b1f5445eb2398cc14cbf6529_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS0xMC0xLTEtNDg1MDI_c2c4e509-083b-4c68-b24d-852ecfa5bd61"
      unitRef="usd">-2360000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOmY2NWUxYTk0Y2I0ODRjZDA4ODk4NzJkZTE3ZGRkOTFiL3RhYmxlcmFuZ2U6ZjY1ZTFhOTRjYjQ4NGNkMDg4OTg3MmRlMTdkZGQ5MWJfOS0xMi0xLTEtNDg1MDI_6a5e6342-1662-4d68-9d67-c1f4ffa47a5a"
      unitRef="usd">66722000</us-gaap:StockholdersEquity>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i52ba23c1caab43049763eb8c7c05905b_I20220131"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC0yLTEtMS00ODUwMg_7ddd8133-6a76-488e-a21a-ade2c6b208e7"
      unitRef="shares">16102023</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i52ba23c1caab43049763eb8c7c05905b_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC00LTEtMS00ODUwMg_d9a30f2e-7d21-4445-a836-b91df8e29bea"
      unitRef="usd">161000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i31bda8c8ea4842e681e8ef1dd7e18618_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC02LTEtMS00ODUwMg_80c40cb4-aa67-42a4-9c0c-82b3029a8ae1"
      unitRef="usd">120492000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i32b42948e1b446038414c0e7223ff341_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC04LTEtMS00ODUwMg_9e5309c0-c013-4a6d-96a8-ed69570d451e"
      unitRef="usd">-67178000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ifc993466e76e4fb891805f5b996dc151_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC0xMC0xLTEtNDg1MDI_89759fa7-e8bb-410e-b8d9-61db622cd89c"
      unitRef="usd">-6029000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i35924208d3d746c491b0ea2b2e4d7e29_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNC0xMi0xLTEtNDg1MDI_798deb15-e87c-4a2d-9b15-15de5ac53ca5"
      unitRef="usd">47446000</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="ibdec95bb07e941ebb2d1d770b5bfc78e_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNS04LTEtMS00ODUwMg_0e598af7-1293-48ab-b97c-61d53c3e891b"
      unitRef="usd">-5084000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ibdec95bb07e941ebb2d1d770b5bfc78e_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNS04LTEtMS00ODUwMg_3dc7314d-fba8-42b2-b7b8-d9c49b19185f"
      unitRef="usd">-5084000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNS0xMi0xLTEtNDg1MDI_fa2ea623-f494-4f29-a79d-700bd9d63483"
      unitRef="usd">-5084000</us-gaap:NetIncomeLoss>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNy0wLTEtMS00ODUwMi90ZXh0cmVnaW9uOjU0MTBiZjgxNmVhNDRmMzFiMGIyNDExYzEwMmE4YTdlXzQ2_3f735075-0d8a-494a-bcf8-dbe1c883d30f"
      unitRef="usd">0</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="i859cef3d71ce4197917e115a33760a0c_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNy0xMC0xLTEtNDg1MDI_199e0a05-20d0-4f37-b435-f717399bfae2"
      unitRef="usd">-135000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfNy0xMi0xLTEtNDg1MDI_65fb78db-a407-445d-901a-d47c0f9d065f"
      unitRef="usd">-135000</us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="i2e0b8b7b8b284ac78c8f0f4961f42d6c_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfOS02LTEtMS00ODUwMg_1a2a36d2-b954-42cc-a80f-9cba94843fed"
      unitRef="usd">253000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfOS0xMi0xLTEtNDg1MDI_c0b151e7-22e4-4401-b6b2-0965084c05de"
      unitRef="usd">253000</us-gaap:AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="if6576d858fc646ff91951e75237ea454_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtMi0xLTEtNDg1MDI_03f94244-79f4-4a25-8d6c-8a83366e30ad"
      unitRef="shares">16102023</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="if6576d858fc646ff91951e75237ea454_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtNC0xLTEtNDg1MDI_ee57ef62-8cf6-4886-b4e9-b53c901f6f6d"
      unitRef="usd">161000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ia7b3209a5d5a4a70ad9bf906a779f3f1_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtNi0xLTEtNDg1MDI_f217e0ad-4bb8-40b3-86c0-2c9950319e2f"
      unitRef="usd">120745000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="ic325352fd9224629a7d5d63a7f9d3d86_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtOC0xLTEtNDg1MDI_cc5b1caf-8503-474c-ac9f-7b5c5c4b9592"
      unitRef="usd">-72262000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i635c7842e4f14afd951d730fbd2d02ae_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtMTAtMS0xLTQ4NTAy_ef37c7b9-ea06-4104-bf81-aa4577ad4c2d"
      unitRef="usd">-5894000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl8zNy9mcmFnOjU1YTMzMTlkM2Q1MTQzZTQ5ZDhmYjMyMGY2ZWE3MzE3L3RhYmxlOjRmOGExODQ0MmQzNDRlMDNhZjhlYjE5ZGM2NmVmNWVkL3RhYmxlcmFuZ2U6NGY4YTE4NDQyZDM0NGUwM2FmOGViMTlkYzY2ZWY1ZWRfMTAtMTItMS0xLTQ4NTAy_7680f1cf-350f-4d0c-b57c-569522a1a700"
      unitRef="usd">42750000</us-gaap:StockholdersEquity>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80My9mcmFnOmZjZjBmYTcyZmZmNjRlYjViMmMzZjliYmRmN2Y3MzdiL3RleHRyZWdpb246ZmNmMGZhNzJmZmY2NGViNWIyYzNmOWJiZGY3ZjczN2JfMTkwNg_1034ecb6-96e6-4fb5-b1d1-52dcd72843ca">Basis of PresentationThe accompanying unaudited condensed consolidated financial statements have been prepared in accordance with accounting principles generally accepted in the United States (U.S. GAAP) for interim financial information and pursuant to the rules and regulations of the Securities and Exchange Commission. Accordingly, they do not include all of the information and notes required by generally accepted accounting principles for complete financial statements and are presented in accordance with the requirements of Form 10-Q and Rule 10-01 of Regulation S-X. These unaudited condensed consolidated financial statements should be read in conjunction with the consolidated financial statements and notes thereto included in the Company&#x2019;s Annual Report on Form 10-K for the fiscal year ended January&#160;31, 2023 (&#x201c;Form&#160;10-K&#x201d;).&#160; In the opinion of management, all adjustments considered necessary for a fair presentation have been included. Operating results for the three months ended April&#160;30, 2023 are not necessarily indicative of the results that may be expected for the fiscal year ending January&#160;31, 2024.  The balance sheet at January&#160;31, 2023 has been derived from the audited consolidated financial statements at that date, but does not include all of the information and notes required by accounting principles generally accepted in the United States for complete financial statements. All references to the &#x201c;Company&#x201d; refer to Virco Mfg. Corporation and its subsidiaries.</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <virc:SeasonalityTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMjgzNA_b83606e6-21e0-49a5-9a76-67f0caeca4ab">Seasonality and Management Use of EstimatesThe market for educational furniture is marked by extreme seasonality, with approximately 50% of the Company&#x2019;s total sales typically occurring from June to August each year, the Company&#x2019;s peak season. Hence, the Company typically builds and carries significant amounts of inventory during and in anticipation of this peak summer season to facilitate the rapid delivery requirements of customers in the educational market. This requires a large up-front investment in inventory, labor, storage and related costs as inventory is built in anticipation of peak sales during the summer months. As the capital required for this build-up generally exceeds cash available from operations, the Company has generally relied on third-party bank financing to meet cash flow requirements during the build-up period immediately preceding the peak season. In addition, the Company typically is faced with an overall higher accounts receivable balance during the peak season. This occurs for two primary reasons. First, accounts receivable balances typically increase during the peak season as shipments of products increase. Second, many customers during this period are educational institutions and government entities, which tend to pay accounts receivable slower than commercial customers.  Historically Virco ships approximately 50% of its annual revenue in the months of June, July, and August.  In fiscal 2022, the seasonal peak was distorted due to severe supply chain interruptions, labor shortages, and COVID-19 related employee absences and the Company delivered less than 40% of sales during June, July, and August.  In fiscal year ended January 31, 2023, the Company started to return to the traditional seasonality and delivered approximately 47% of annual sales in June, July, and August.  The Company&#x2019;s working capital requirements during and in anticipation of the peak summer season require management to make estimates and judgments that affect assets, liabilities, revenues and expenses, and related contingent assets and liabilities. On an ongoing basis, management evaluates its estimates, including those related to market demand, labor costs and stocking inventory.  Significant estimates made by management include, but are not limited to, valuation of inventory; deferred tax assets and liabilities; useful lives of property, plant and equipment; liabilities under pension, warranty and self-insurance; and the accounts receivable allowance for doubtful accounts.</virc:SeasonalityTextBlock>
    <virc:ExtremeSeasonalityGoods
      contextRef="iebf10b00d5b540539b5c9836dce200af_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMTQ3_10111491-17b1-4bc8-8b35-3cb7bf912a83"
      unitRef="number">0.50</virc:ExtremeSeasonalityGoods>
    <virc:ExtremeSeasonalityGoods
      contextRef="iebf10b00d5b540539b5c9836dce200af_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMjc0ODc3OTA3MjMyNA_2b91d8b2-030c-4e6d-bbf2-ad01c0cff674"
      unitRef="number">0.50</virc:ExtremeSeasonalityGoods>
    <virc:ExtremeSeasonalityGoods
      contextRef="i2ab2cbba95b540a8a4bb11033f99aadd_D20210201-20220131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMjc0ODc3OTA3MjU3NA_e6e97c43-9f34-4e7c-a094-b86c19da3a71"
      unitRef="number">0.40</virc:ExtremeSeasonalityGoods>
    <virc:ExtremeSeasonalityGoods
      contextRef="i756b4b4dd7e6405e8e3d1e8fbc4e6c8f_D20220201-20230131"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80Ni9mcmFnOjZlMzA2NDQ3MzE3NzRmMzliMTlkMGVlZThiZjQxOWU1L3RleHRyZWdpb246NmUzMDY0NDczMTc3NGYzOWIxOWQwZWVlOGJmNDE5ZTVfMjc0ODc3OTA3MjcyNA_3409b2c2-2641-4dbb-982f-b76903ac88a9"
      unitRef="number">0.47</virc:ExtremeSeasonalityGoods>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl80OS9mcmFnOjhjMjhjZWFkOGQ4YTQ2ZGY4NTdhNjEzNWM4ZGQ4MTFiL3RleHRyZWdpb246OGMyOGNlYWQ4ZDhhNDZkZjg1N2E2MTM1YzhkZDgxMWJfOTI1_75bbb535-9a4d-41ac-b454-0258417733ed">&lt;span style="color:#252525;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company evaluates all Accounting Standards Updates ("ASUs") issued by the Financial Accounting Standards Board ("FASB") for consideration of their applicability to our condensed consolidated financial statements. We have assessed all ASUs issued but not yet adopted and concluded that those not disclosed are not&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt; relevant &lt;/span&gt;&lt;span style="color:#252525;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;to&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt; the Company or are not expected to have a material impact.&lt;/span&gt;</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:RevenueFromContractWithCustomerTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81NS9mcmFnOmE3ZjQ3Njc2ZjQ5YTRiMzRiZDQwMjFkNzU5YTMyYWU3L3RleHRyZWdpb246YTdmNDc2NzZmNDlhNGIzNGJkNDAyMWQ3NTlhMzJhZTdfMjg3OQ_47027a69-fe19-4081-b602-0407c085bb74">Revenue RecognitionThe Company manufactures, markets and distributes a wide variety of school and office furniture to wholesalers, distributors, educational institutions and governmental entities. Revenue is recorded for promised goods or services when control is transferred to customers in an amount that reflects the consideration to which the entity expects to be entitled to in exchange for those goods or services.&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's sales generally involve a single performance obligation to deliver goods pursuant to customer purchase orders.&#160; Prices for our products are based on published price lists and customer agreements. The Company has determined that the performance obligations are satisfied at a point in time when the Company completes delivery per the customer contract. The majority of sales are free on board ("FOB") destination where the destination is specified per the customer contract and may include delivering the furniture into the classroom, school site or warehouse. Sales of furniture that are sold FOB factory are typically made to resellers of our product who in turn provide logistics to the ultimate customer. Once a product has been delivered per the shipping terms, the customer is able to direct the use of, and obtain substantially all of the remaining benefits from the asset. The Company considers control to have transferred upon shipment or delivery in accordance with shipping terms because the Company has a present right to payment at that time, the customer has legal title to the asset, the Company has transferred physical possession of the asset, and the customer has significant risks and rewards of ownership of the asset.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Sales are recorded net of discounts, sales incentives and rebates, sales taxes and estimated returns and allowances.  The Company offers sales incentives and discounts through various regional and national programs to our customers. These programs include product rebates, product returns allowances and trade promotions. Variable consideration for these programs is estimated in the transaction price at contract inception based on current sales levels and historical experience using the expected value method, subject to constraint.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company generates revenue primarily by manufacturing and distributing products through resellers and direct-to-customers. Control transfers to both resellers and direct customers at a point in time when the delivery process is complete as determined by the corresponding shipping terms. Therefore, we do not consider them to be meaningfully different revenue streams given similarities in the nature of the products, performance obligation and distribution processes. Sales are predominately in the United States and to a similar class of customer. We do not manage or evaluate the business based on product line or any other discernable category.&lt;/span&gt;&lt;/div&gt;</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:InventoryDisclosureTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RleHRyZWdpb246NTkwZDMyM2NiNTI5NDMyMGFkNjdmYzU0MGJmNGViODdfMTIwMA_0379efa5-18b4-4b98-8b65-02897d7cdd56">Inventories&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventory is valued at the lower of cost or net realizable value (determined on a first-in, first-out basis) and includes material, labor, and factory overhead.  The Company records valuation adjustments for the excess cost of the inventory over its estimated net realizable value.  Valuation adjustments for slow-moving and obsolete inventory are calculated using an estimated percentage applied to inventories based on a physical inspection of the product in connection with a physical inventory, a review of slow-moving products and component stage, inventory category, historical and forecasted consumption of sales, and consideration of active marketing programs.  The market for education furniture is traditionally driven by value, not style, and the Company has not typically incurred material obsolescence expenses.  If market conditions are less favorable than those anticipated by management, additional valuation adjustments may be required.  The Company records the cost of excess capacity as a period expense, not as a component of capitalized inventory valuation.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Inventory increased by $19,343,000 at April 30, 2023 compared to April 30, 2022.  The entire increase in inventory was attributable to increased quantity.  The cost and valuation of inventory was stable. The quantity of inventory was increased in response to a material increase in unshipped sales orders (backlog).  The majority of the backlog is scheduled for delivery during the traditional seasonal peak from June through August.  The increase in inventory was financed by increased borrowing under the Company&#x2019;s line of credit with PNC Bank and increased vendor credit, which traditionally increases with increased purchases of materials.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents a breakdown of the Company&#x2019;s inventories as of April&#160;30, 2023, January&#160;31, 2023 and April&#160;30, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.852%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.544%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.739%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.544%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.739%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.741%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1/31/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,919&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;Work in process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,303&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,659&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;66,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:InventoryDisclosureTextBlock>
    <virc:IncreaseInInventories
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RleHRyZWdpb246NTkwZDMyM2NiNTI5NDMyMGFkNjdmYzU0MGJmNGViODdfNDM5ODA0NjUxNjg1NA_377ea38a-abe9-48e5-8b1d-fe88aa25a4f1"
      unitRef="usd">19343000</virc:IncreaseInInventories>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RleHRyZWdpb246NTkwZDMyM2NiNTI5NDMyMGFkNjdmYzU0MGJmNGViODdfMTE5Ng_098128d6-c059-4f1c-890c-0f8c0b473edf">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table presents a breakdown of the Company&#x2019;s inventories as of April&#160;30, 2023, January&#160;31, 2023 and April&#160;30, 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-top:14pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.852%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.544%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.739%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.544%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.739%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.741%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1/31/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;Finished goods&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,370&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,740&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;29,919&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;Work in process&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;32,918&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;25,303&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,719&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;Raw materials&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,352&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,363&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,659&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total inventories&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;85,640&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;67,406&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;66,297&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfMy0yLTEtMS00ODUwMg_bfca7d0e-2ba9-4bc0-9495-096eed934bd9"
      unitRef="usd">34370000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfMy00LTEtMS00ODUwMg_524d39c5-4491-4452-bc78-41be3c038faa"
      unitRef="usd">25740000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfMy02LTEtMS00ODUwMg_108bbdb4-1f66-42e3-bd0d-cdd374bf791f"
      unitRef="usd">29919000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNC0yLTEtMS00ODUwMg_e86b3f9b-6320-4eb4-8aa1-5acc531a1abe"
      unitRef="usd">32918000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNC00LTEtMS00ODUwMg_6b8919b6-2e45-4cda-8282-ea427a37ec33"
      unitRef="usd">25303000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNC02LTEtMS00ODUwMg_f97a0a71-8a59-4748-a392-233e74f42a1d"
      unitRef="usd">21719000</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNS0yLTEtMS00ODUwMg_1ed51cd3-eff6-4abe-bae7-0e2eea57c2ab"
      unitRef="usd">18352000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNS00LTEtMS00ODUwMg_e1a4195c-1fb9-43bf-9af5-948946789963"
      unitRef="usd">16363000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNS02LTEtMS00ODUwMg_8fe4a7d0-54fd-4dd7-9157-067913f56b54"
      unitRef="usd">14659000</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNi0yLTEtMS00ODUwMg_6a0ad2b8-11e5-4977-a1e3-a3e02ef70f56"
      unitRef="usd">85640000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNi00LTEtMS00ODUwMg_3c819764-a2dd-4a93-ba81-b3ffb5fc175f"
      unitRef="usd">67406000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl81OC9mcmFnOjU5MGQzMjNjYjUyOTQzMjBhZDY3ZmM1NDBiZjRlYjg3L3RhYmxlOmNmZTAyZjZhNTM2YjQwYmE5NDRiYTcyODhjYzBiNzQ3L3RhYmxlcmFuZ2U6Y2ZlMDJmNmE1MzZiNDBiYTk0NGJhNzI4OGNjMGI3NDdfNi02LTEtMS00ODUwMg_4bd328f8-0a98-4ffe-9af7-fc2e464fa476"
      unitRef="usd">66297000</us-gaap:InventoryNet>
    <us-gaap:LesseeOperatingLeasesTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RleHRyZWdpb246YTgyMDcwYmU4OGI1NGU1MDk5NGQ4ZjgwNDY2YmZhYjlfMTAwMw_03a58b95-d93f-4132-bdd6-3254450cb389">Leases&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has operating leases on real property, equipment, and automobiles, expiring at various dates through 2026.  The Company determines if an arrangement is a lease at inception and assesses classification of the lease at commencement. All of the Company&#x2019;s leases are classified as operating leases.  Pursuant to ASC 842 -&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"&gt; Leases&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;, the Company uses the implicit rate when readily determinable, or the incremental borrowing rate.  Our incremental borrowing rate is estimated to approximate the interest rate on a collateralized basis with similar terms and payments using Company specific credit spreads. The Company&#x2019;s lease terms include options to extend or terminate the lease only when it is reasonably certain that we will exercise that option. Lease expense for our operating leases is recognized on a straight-line basis over the lease term.  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company has an operating lease for its corporate office, manufacturing and distribution facility located in Torrance, CA, currently with a remaining lease term through April 2025. The Company's lease terms include options to extend or terminate the lease only when it is reasonably certain that we exercise that option.  The Company leases equipment under a&#160;5-year operating lease arrangement. The Company has the option of buying the assets at the end of the lease period at a price that does not result in the Company being reasonably certain of exercising the option. In addition, the Company leases trucks and automobiles under operating leases that include certain fleet management and maintenance services. Certain of the leases contain renewal or purchase options and require payment for property taxes and insurance. The Company records lease expense on a straight-line basis based on the contractual lease payments.  In accordance with ASC 842, the Company recognizes the present value of the future lease commitments as an operating lease liability, and a corresponding right-of-use asset (&#x201c;ROU asset&#x201d;), net of tenant allowances.  Tenant improvements and related tenant allowances are recorded as a reduction to the ROU asset.  The Company elected to account for leases with an original term of 12 months or less that do not contain a purchase option as short-term leases. Additionally, certain of the leases provide for variable payment for property taxes, insurance, and common area maintenance payments among others. The Company recognizes variable lease expenses for these leases in the period incurred. The Company's lease agreements do not contain any material residual value guarantees or material restrictive covenants.  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The quantitative information regarding our leases is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.465%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.798%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.395%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.801%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands, except lease term and discount rate)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,327&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sublease income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Variable lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,628&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,667&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Other operating leases information:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,433&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Right-of-use assets obtained in exchange for new lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;292&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average remaining lease term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.9&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.33&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-top:5pt;text-align:center"&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Minimum future lease payments for operating leases in effect as of&#160;April&#160;30, 2023, are as follows:&lt;/span&gt;&lt;/div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.614%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.481%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.319%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Lease&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;For the year ending January 31, &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Remaining of 2024&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,344&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,536&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2028&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Remaining balance of lease payments&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;11,676&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;10,919&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Difference between undiscounted cash flows and discounted cash flows&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;757&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LesseeOperatingLeasesTextBlock>
    <us-gaap:LeaseCostTableTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RleHRyZWdpb246YTgyMDcwYmU4OGI1NGU1MDk5NGQ4ZjgwNDY2YmZhYjlfMTAwNg_b8fd08da-5dca-4cd8-bdbb-ae725cc6ef96">&lt;div style="margin-bottom:10pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The quantitative information regarding our leases is as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:10pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.245%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.465%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.841%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.798%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.395%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.801%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="12" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands, except lease term and discount rate)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Operating lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,269&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,327&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;108&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;97&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Sublease income&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(10)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Variable lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;261&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total lease cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,628&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;1,667&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Other operating leases information:&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cash paid for amounts included in the measurement of lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,433&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,454&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Right-of-use assets obtained in exchange for new lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;292&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;98&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average remaining lease term (years)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.2&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2.9&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted-average discount rate&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.33&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;6.38&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:LeaseCostTableTextBlock>
    <us-gaap:OperatingLeaseCost
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMy01LTEtMS00ODUwMg_7188adf9-7c50-442f-829f-45e18fbff814"
      unitRef="usd">1269000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMy03LTEtMS00ODUwMg_2cc2e9bd-0682-4f1b-a0e1-77ee2a1f14e9"
      unitRef="usd">1327000</us-gaap:OperatingLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNC01LTEtMS00ODUwMg_5a56d8de-6a00-4922-9a8b-2610e8e2f615"
      unitRef="usd">108000</us-gaap:ShortTermLeaseCost>
    <us-gaap:ShortTermLeaseCost
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNC03LTEtMS00ODUwMg_be39680a-4978-4a44-b1ca-780c76de0dbf"
      unitRef="usd">97000</us-gaap:ShortTermLeaseCost>
    <us-gaap:SubleaseIncome
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNS01LTEtMS00ODUwMg_d4695031-9a86-440a-acbf-19d847ade9ef"
      unitRef="usd">10000</us-gaap:SubleaseIncome>
    <us-gaap:SubleaseIncome
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNS03LTEtMS00ODUwMg_1598be5d-9cc4-4c2a-b61f-086844218214"
      unitRef="usd">10000</us-gaap:SubleaseIncome>
    <us-gaap:VariableLeaseCost
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNi01LTEtMS00ODUwMg_ee92e8ac-763e-4185-b7db-5979ccc85437"
      unitRef="usd">261000</us-gaap:VariableLeaseCost>
    <us-gaap:VariableLeaseCost
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNi03LTEtMS00ODUwMg_ee4baef7-2416-4b18-9f7b-a59f38899ae9"
      unitRef="usd">253000</us-gaap:VariableLeaseCost>
    <us-gaap:LeaseCost
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNy01LTEtMS00ODUwMg_8c6a652d-f49a-4edd-951e-f9ea1a01a4ee"
      unitRef="usd">1628000</us-gaap:LeaseCost>
    <us-gaap:LeaseCost
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfNy03LTEtMS00ODUwMg_2a951b53-a90f-4b45-b89e-ee454047ff6a"
      unitRef="usd">1667000</us-gaap:LeaseCost>
    <us-gaap:PaymentsForRent
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTAtNS0xLTEtNDg1MDI_82a29d20-47e8-4687-a1b3-89e6acd5b5bb"
      unitRef="usd">1433000</us-gaap:PaymentsForRent>
    <us-gaap:PaymentsForRent
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTAtNy0xLTEtNDg1MDI_f51264e8-d108-4871-b634-939c68beb9e2"
      unitRef="usd">1454000</us-gaap:PaymentsForRent>
    <us-gaap:CapitalLeaseObligationsIncurred
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTEtNS0xLTEtNDg1MDI_e22b8ea4-bc66-493d-8503-abe98bf893b6"
      unitRef="usd">292000</us-gaap:CapitalLeaseObligationsIncurred>
    <us-gaap:CapitalLeaseObligationsIncurred
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTEtNy0xLTEtNDg1MDI_bb1d3360-ed31-4377-a456-410b39dc62ef"
      unitRef="usd">98000</us-gaap:CapitalLeaseObligationsIncurred>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTItNS0xLTEtNDg1MDI_1ff1f151-1cce-4bc9-b39c-11b891bb9c3f">P2Y2M12D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTItNy0xLTEtNDg1MDI_6d548d78-1935-4e51-b531-195fd3abfee3">P2Y10M24D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTMtNS0xLTEtNDg1MDI_ed2d0f9c-d6a6-4a63-90e2-11856bf6c0dd"
      unitRef="number">0.0633</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRjOWIwMTU3MTdkNzQ3YmY4OWQ3ZDFkMWVmY2M1NzkwL3RhYmxlcmFuZ2U6ZGM5YjAxNTcxN2Q3NDdiZjg5ZDdkMWQxZWZjYzU3OTBfMTMtNy0xLTEtNDg1MDI_0123fb78-9c4d-454a-b44b-a766c214bc83"
      unitRef="number">0.0638</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RleHRyZWdpb246YTgyMDcwYmU4OGI1NGU1MDk5NGQ4ZjgwNDY2YmZhYjlfMTAwOA_23dca4e2-e21c-4ed4-acae-8a5dd3d4d010">Minimum future lease payments for operating leases in effect as of&#160;April&#160;30, 2023, are as follows:&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.614%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:79.481%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.319%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Operating Lease&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;For the year ending January 31, &lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Remaining of 2024&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,344&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2025&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,794&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2026&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;1,536&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2027&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;2028&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Thereafter&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Remaining balance of lease payments&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;11,676&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Short-term lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,271&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Long-term lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;5,648&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Total lease liabilities&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;10,919&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:top"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Difference between undiscounted cash flows and discounted cash flows&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;757&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMi0xLTEtMS00ODUwMg_348148ad-5894-42f6-aa44-efe6b28a0bba"
      unitRef="usd">4344000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMy0xLTEtMS00ODUwMg_e965f487-973b-4a25-86b2-c85b456f2579"
      unitRef="usd">5794000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfNC0xLTEtMS00ODUwMg_8157a552-c479-4a59-85e2-dd1ad05247df"
      unitRef="usd">1536000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfNS0xLTEtMS00ODUwMg_e0b09a34-b6ed-49ee-b8ef-7a0155fbbe5c"
      unitRef="usd">2000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfNi0xLTEtMS00ODUwMg_45f72721-751e-4b96-a5c8-f8e876dc306b"
      unitRef="usd">0</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <virc:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfNy0xLTEtMS00ODUwMg_e705b050-a67f-4e5a-a92b-7e6d433fc6d1"
      unitRef="usd">0</virc:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfOC0xLTEtMS00ODUwMg_0a5381bb-24ef-449e-94ac-e46bc3d64167"
      unitRef="usd">11676000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTAtMS0xLTEtNDg1MDI_10f882ce-d63a-420b-816e-d825d8fa72f2"
      unitRef="usd">5271000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTAtMS0xLTEtNDg1MDI_74e876d5-c723-4a5f-a231-20a447f5be89"
      unitRef="usd">5271000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTEtMS0xLTEtNDg1MDI_ccc53ffb-d291-4fbe-a46f-b4d58185689b"
      unitRef="usd">5648000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTItMS0xLTEtNDg1MDI_9f21dc90-56a9-4315-9c78-c35a1d213ca0"
      unitRef="usd">10919000</us-gaap:OperatingLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82MS9mcmFnOmE4MjA3MGJlODhiNTRlNTA5OTRkOGY4MDQ2NmJmYWI5L3RhYmxlOmRiZGY0NjdmZDQ4MDQyM2RhMzE2MDBjYzc4MzBjNzU1L3RhYmxlcmFuZ2U6ZGJkZjQ2N2ZkNDgwNDIzZGEzMTYwMGNjNzgzMGM3NTVfMTQtMS0xLTEtNDg1MDI_a6ae1dd8-c5c7-49b5-acd0-467ee78ad319"
      unitRef="usd">757000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:DebtDisclosureTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNjc1Mg_4ca481f1-2225-4953-a280-b78df86ea18e">Debt&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Outstanding balances for the Company&#x2019;s long-term debt were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.807%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.801%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.547%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.801%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.547%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.803%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;1/31/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revolving credit line&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,674&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,622&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,469&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current portion&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,323&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company and Virco Inc., its wholly-owned subsidiary (the &#x201c;Borrowers&#x201d;) have a Revolving Credit and Security Agreement (the &#x201c;Credit Agreement&#x201d;) with PNC Bank, National Association, as administrative agent and lender (&#x201c;PNC&#x201d;).  The Credit Agreement was amended numerous times since its origination in December 2011.  On September 28, 2021, the Borrowers entered into an Amended and Restated Revolving Credit and Security Agreement (the &#x201c;Restated Credit Agreement&#x201d;) with PNC Bank, which amended and restated the prior Credit Agreement and effectively incorporated all of the prior amendments into an amended and restated form of agreement. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Restated Credit Agreement permits the Company to issue dividends or make payments with respect to the Company&#x2019;s capital stock in an aggregate amount up to $3.0 million during any fiscal year, provided that no default shall have occurred or is continuing or would result from any such payment, and the Company must demonstrate pro forma compliance with a 12-month trailing fixed charge coverage ratio of not less than 1.20:1.00 as of the fiscal quarter immediately preceding the date of any such dividend or payment.  The Restated Credit Agreement also requires the Company to maintain a minimum fixed charge coverage ratio, and contains numerous other covenants that limit under certain circumstances the ability of the Borrowers and their subsidiaries to, among other things, merge with or acquire other entities, incur new liens, incur additional indebtedness, sell assets outside of the ordinary course of business, enter into transactions with affiliates, or substantially change the general nature of the business of the Borrowers.  In connection with the Restated Credit Agreement, the Company also agreed to pay to PNC Bank a non-refundable fee of $50,000.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In addition to the financial covenants, the Restated Credit Agreement provides for customary events of default, subject to certain cure periods and other limitations.  Substantially all of the Borrowers' accounts receivable are automatically and promptly swept to repay amounts outstanding under the Restated Credit Agreement upon receipt by the Borrowers. Due to this automatic liquidating nature of the Restated Credit Agreement, if the Borrowers breach any covenant, violate any representation &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;or warranty or suffer a deterioration in their ability to borrow pursuant to the borrowing base calculation, the Borrowers may not have access to cash liquidity unless provided by PNC at its discretion. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The other material terms of the Restated Credit Agreement are substantially the same as those of the original Credit Agreement, consisting of (i) a revolving line of credit with a Maximum Revolving Advance Amount of  $65.0 million that is subject to a borrowing base limitation and generally provides for advances of up to 85% of eligible accounts receivable, plus a percentage equal to the lesser of 60% of the value of eligible inventory or 85% of the liquidation value of eligible inventory, plus $15.0 million from January through July of each year, minus undrawn amounts of letters of credit and reserves and (ii) an equipment loan of $2.0&#160;million.  The Restated Credit Agreement is secured by substantially all of the Borrowers&#x2019; personal property and certain of the Borrowers&#x2019; real property. The Restated Credit Agreement is subject to certain prepayment penalties upon early termination of the Restated Credit Agreement. Prior to the maturity date, principal amounts outstanding under the Restated Credit Agreement may be repaid and reborrowed at the option of the Borrowers without premium or penalty, subject to borrowing base limitations, seasonal adjustments and certain other conditions, including reduced borrowings under the revolving line to less than or equal $10.0 million for a period of 30 consecutive days during the fourth quarter of each fiscal year. The Restated Credit Agreement also contains certain financial covenants, including covenants requiring a minimum fixed charge coverage ratio and limits on capital expenditures. The Company was in compliance with its debt covenants as of April&#160;30, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align:justify"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;The Company's revolving line of credit with PNC is structured to provide seasonal credit availability during the Company's peak summer season. Approximately $16.6 million was available for borrowing as of April&#160;30, 2023.  The interest rate range for outstanding loan balances during the quarter ended April&#160;30, 2023 was 7.65% to 9.75%. The Company also incurs a fee on the unused portion of the revolving line of credit at a rate of 0.375%. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In addition to the outstanding debt balance of $30.1 million on the Company's revolving credit line, the Company also carries a mortgage on a manufacturing building in Conway Arkansas. The original note was dated August 2017 for $5.8&#160;million, at a fixed rate of 4% per year and 20 years term.  The outstanding amount under this note was $4.6 million as of April&#160;30, 2023.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;On May 19, 2023, the Company entered into Amendment No. 3 to Amended and Restated Revolving Credit and Security Agreement (&#x201c;Amendment No. 3&#x201d;) with PNC, with an effective date of May 5, 2023. Amendment No. 3 amended the Restated Credit Agreement and the secured revolving line of credit provided to the Company under the revolving credit facility to reflect the following material changes:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;i.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:12.73pt"&gt;Maximum size of the PNC line of credit has been increased to $72.5&#160;million during the months of June through August of 2023, to provide additional availability for the Company&#x2019;s forecast through the 2023 peak borrowing period;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;ii.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:9.96pt"&gt;Increase in the total inventory sublimit under the Credit Agreement to $35.0&#160;million and increase in the Assemble-to-ship (ATS) inventory sublimit to $15.0&#160;million during the months of May through August of 2023; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;iii.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:7.19pt"&gt;The Company agreed to pay an amendment fee of $50,000, which is 0.67% on the incremental line increase of $7.5&#160;million; and&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="padding-left:36pt;text-indent:-18pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;iv.&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%;padding-left:7.73pt"&gt;Increase in the Applicable Margin (as defined in the Credit Agreement) of 25 basis points.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;Management believes that the carrying value of debt approximated fair value at April&#160;30, 2023, as all of the long-term debt bears interest at variable rates based on prevailing market conditions.&lt;/span&gt;&lt;/div&gt;</us-gaap:DebtDisclosureTextBlock>
    <us-gaap:ScheduleOfDebtInstrumentsTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNjc1MQ_e566c856-6949-4e2a-bf0b-5487a4fbbe59">&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Outstanding balances for the Company&#x2019;s long-term debt were as follows:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.807%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:55.701%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.801%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.547%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.801%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.547%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:12.803%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;1/31/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="15" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Revolving credit line&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;30,121&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;17,122&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28,674&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Other&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,622&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;4,795&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total debt&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34,685&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;21,744&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;33,469&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Less current portion&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;20,362&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;7,360&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;18,905&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Non-current portion&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,323&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,384&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;14,564&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfDebtInstrumentsTextBlock>
    <us-gaap:LongTermDebt
      contextRef="i7a2f7b44cab3414e801e207554b6cb6a_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMi0xLTEtMS00ODUwMg_26ee238a-e8a7-47fd-a645-e10dd6fe1382"
      unitRef="usd">30121000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="ia4625a145f054c6f944f092eabe7972e_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMi0zLTEtMS00ODUwMg_4c382986-dc27-458b-9b9f-20beae1e6472"
      unitRef="usd">17122000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="ie31f7af831874309a231e49017ef6fd3_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMi01LTEtMS00ODUwMg_10731308-09fd-457f-8cca-507a5773eef5"
      unitRef="usd">28674000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i817023d33a2c4b06a2faf3fe4bc4a5f3_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMy0xLTEtMS00ODUwMg_be0a2fb5-d5ec-42af-9694-8ba0d33bbd9b"
      unitRef="usd">4564000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="if6190fa3b4a14376ba8b68fa6e2be828_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMy0zLTEtMS00ODUwMg_8eb82653-d2ed-4488-9fb6-4574dbf03a78"
      unitRef="usd">4622000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="if29a68af9f094831869c15d74305d73e_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfMy01LTEtMS00ODUwMg_ed3b4541-52eb-46f0-a399-b5f563f88eda"
      unitRef="usd">4795000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNC0xLTEtMS00ODUwMg_d844fa4c-324e-484b-bcd8-a9cd187dca59"
      unitRef="usd">34685000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNC0zLTEtMS00ODUwMg_6b2760ca-bd50-47bc-9c9c-8f511d2ce37c"
      unitRef="usd">21744000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNC01LTEtMS00ODUwMg_0dab210d-47c0-44b5-adf8-385f3e9c3800"
      unitRef="usd">33469000</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNS0xLTEtMS00ODUwMg_e586093c-5a7b-420b-925e-160619f88524"
      unitRef="usd">20362000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNS0zLTEtMS00ODUwMg_e4e8ecc3-bd55-4526-88f7-2998cd12426a"
      unitRef="usd">7360000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNS01LTEtMS00ODUwMg_5315a815-69a9-4845-9eaa-f935141fc31a"
      unitRef="usd">18905000</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNi0xLTEtMS00ODUwMg_1fa0b3bc-2177-4782-89e5-a1118fce679a"
      unitRef="usd">14323000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNi0zLTEtMS00ODUwMg_d0d22aa0-ed49-49a3-b246-4a401b5b9ace"
      unitRef="usd">14384000</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RhYmxlOmY5YTA5OTExMmQ5NTQzZjdiMjk4M2VlNDk4Yjc2Zjc4L3RhYmxlcmFuZ2U6ZjlhMDk5MTEyZDk1NDNmN2IyOTgzZWU0OThiNzZmNzhfNi01LTEtMS00ODUwMg_a201dd10-0ccf-48c5-a5a3-4889a304ffbc"
      unitRef="usd">14564000</us-gaap:LongTermDebtNoncurrent>
    <virc:DividendPayableMaximumAmountInFiscalYear
      contextRef="ic99f7b405719435fb21df998ae2ec444_I20210928"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfODkz_7ad4d0f3-836d-4763-86b3-8c1758bd3f68"
      unitRef="usd">3000000.0</virc:DividendPayableMaximumAmountInFiscalYear>
    <virc:DebtInstrumentCovenantMinimumFixedChargeCoverageRatio
      contextRef="ifb78696c77304063b0f49344b285068a_I20210928"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNjc1Nw_b613e0a6-cbf4-41e7-aaad-e44466cb6799"
      unitRef="number">1.2</virc:DebtInstrumentCovenantMinimumFixedChargeCoverageRatio>
    <us-gaap:DebtInstrumentFeeAmount
      contextRef="icb21eca85b6647d0a41413ec21a03897_I20210928"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDQ3Ng_b57d8072-8400-445d-9cd8-c1e1a21d745d"
      unitRef="usd">50000</us-gaap:DebtInstrumentFeeAmount>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ia43dde74291e440297c825b0c65e0613_I20230430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMTk5Mw_7d28d231-0cd8-4dba-a4de-6b78c6841c51"
      unitRef="usd">65000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <virc:LineOfCreditFacilityBorrowingBaseLimitation
      contextRef="i79d1afc994cc438b9333f2182b2eb286_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjA5Ng_0482c67c-a4ae-4171-a427-6eb880a40ff6"
      unitRef="number">0.85</virc:LineOfCreditFacilityBorrowingBaseLimitation>
    <virc:LineOfCreditFacilityBorrowingBaseLimitation
      contextRef="i62a77fa9904b43519b12ab5521fbfc50_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjE3Mw_13003641-2e4f-4d34-8781-524142184699"
      unitRef="number">0.60</virc:LineOfCreditFacilityBorrowingBaseLimitation>
    <virc:LineOfCreditFacilityBorrowingBaseLimitation
      contextRef="i2ab1ef2c4f7047d48c0303f65520f6fd_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjIxNA_0e3c1766-b519-4647-9e81-5a710791a2bb"
      unitRef="number">0.85</virc:LineOfCreditFacilityBorrowingBaseLimitation>
    <virc:LineOfCreditFacilityBorrowingCapacityTerm
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjI3MA_7d2344f7-e2fa-4c61-9e63-d63d0d95eeb3"
      unitRef="usd">15000000.0</virc:LineOfCreditFacilityBorrowingCapacityTerm>
    <us-gaap:LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases
      contextRef="i5ea441bc5c934be682f32a5baa341109_I20230430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDQ4NQ_d0ba0293-56e3-462e-8c6c-35099182511e"
      unitRef="usd">2000000</us-gaap:LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="ie06315b6326d4b3d98afbe1efd76fde7_I20230430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjk5OQ_d5fbcc96-13f4-418c-a219-fc1db9ae67cb"
      unitRef="usd">10000000.0</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <virc:LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMzAyNg_cf4f4045-8f6f-47b6-b609-fed2cea9823d">P30D</virc:LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i9665e52c433240ef84f46d104164bd2b_I20230430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDQyMQ_885d2b27-1d80-4a48-aaff-bbcb38a5ad61"
      unitRef="usd">16600000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="ie35abe19f9f1469a8eae1c647f7c08ef_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDMwMA_8dafdb93-b341-4b7d-bfaa-ab8ecad3d419"
      unitRef="number">0.0765</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i08ef98998f094e798fa98b2f252dc5d6_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDQ5Nw_0eb12552-8bba-4003-8239-1a3c2c598b3a"
      unitRef="number">0.0975</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDU5OQ_ebca6c83-55b4-43c5-b4d6-1d54adea45c2"
      unitRef="number">0.00375</us-gaap:LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage>
    <us-gaap:LongTermDebt
      contextRef="i7a2f7b44cab3414e801e207554b6cb6a_I20230430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDY1Mw_98b0da6b-075e-4efd-bee8-e0974c746c1a"
      unitRef="usd">30100000</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i039bec46eeb14855a38dcf9d8f5abc84_I20170831"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDgzMw_865e53c3-e748-4aed-a0f8-b8ec9845f653"
      unitRef="usd">5800000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i039bec46eeb14855a38dcf9d8f5abc84_I20170831"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDg1Nw_8f928558-880f-45cf-8e5d-120a209e195a"
      unitRef="number">0.04</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentTerm
      contextRef="i10fa72e190f1458da0355bf56b31fc96_D20170801-20170831"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDg3NA_90bf25ea-44d9-4b76-ba0e-0dcf414befbd">P20Y</us-gaap:DebtInstrumentTerm>
    <us-gaap:LongTermDebt
      contextRef="iff2c0793561f4e4984581d42b5d8aec1_I20230430"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfMjc0ODc3OTA4MDkyOA_eff88db9-cd4b-4ed7-9565-99967fb6fe45"
      unitRef="usd">4600000</us-gaap:LongTermDebt>
    <us-gaap:LineOfCreditFacilityIncreaseDecreaseForPeriodNet
      contextRef="i128c9fd6ffdd4691a605fc1dfd1e983b_D20230519-20230519"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDMwOQ_0c4793e3-251e-4bde-9338-476d361c4672"
      unitRef="usd">72500000</us-gaap:LineOfCreditFacilityIncreaseDecreaseForPeriodNet>
    <virc:IncreaseDecreaseInInventorySublimitUnderCreditAgreement
      contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDMzOQ_31bab8e3-680f-47ba-ad43-40e3f67ba826"
      unitRef="usd">35000000</virc:IncreaseDecreaseInInventorySublimitUnderCreditAgreement>
    <virc:IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement
      contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDMyNA_e5b637f2-6b6e-4d57-95f3-c3ec74d42472"
      unitRef="usd">15000000</virc:IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement>
    <virc:CreditAgreementAmendmentFee
      contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDM1NA_289c0424-72b6-4c04-9f5f-af0dcb2769e3"
      unitRef="usd">50000</virc:CreditAgreementAmendmentFee>
    <virc:IncrementalCreditLineIncreaseDecreasePercentage
      contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519"
      decimals="4"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDM2Mw_53a59494-33a1-4675-aba5-b74334c78967"
      unitRef="number">0.0067</virc:IncrementalCreditLineIncreaseDecreasePercentage>
    <virc:IncrementalCreditLineIncreaseDecrease
      contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519"
      decimals="-5"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDM3MA_a5da5137-885b-4e86-bcfa-f27cdfa9b5b1"
      unitRef="usd">7500000</virc:IncrementalCreditLineIncreaseDecrease>
    <virc:IncreaseDecreaseApplicableMarginBasisPoints
      contextRef="ib6dba316cf4a4d65a27e55eeb7ba61da_I20230519"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82NC9mcmFnOjBjOTUyMjRlMTQ1ODRmYzdhMzljMDA3NTI1MWUxYzRhL3RleHRyZWdpb246MGM5NTIyNGUxNDU4NGZjN2EzOWMwMDc1MjUxZTFjNGFfNDM5ODA0NjU1MDM4NA_d41a9e49-1965-47f4-b649-58593e1cbe87"
      unitRef="basispoint">25</virc:IncreaseDecreaseApplicableMarginBasisPoints>
    <us-gaap:IncomeTaxDisclosureTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMzk5MA_31f4e255-9eb8-475a-984d-2d69b6d2f840">Income Taxes&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;In assessing the realizability of deferred tax assets, the Company considers whether it is more likely than not that some portion or all of its deferred tax assets will not be realized.  The ultimate realization of deferred tax assets is dependent upon the generation of future taxable income or reversal of deferred tax liabilities during the periods in which those temporary differences become deductible. As a part of this evaluation, the Company assesses all available positive and negative evidence, including future reversals of existing taxable temporary differences, projected future taxable income, the availability of tax carry backs, tax-planning strategies, and results of recent operations, to determine whether sufficient future taxable income will be generated to realize existing deferred tax assets.  Valuation allowances of $575,000, $864,000 and $10,099,000 as of April&#160;30, 2023, January&#160;31, 2023 and April&#160;30, 2022, respectively, are needed for federal deferred tax assets and certain state net operating loss carryforwards to reduce the carrying amount of deferred tax assets to an amount that is more likely than not to be realized.  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:107%"&gt;For the three months ended April&#160;30, 2023 and 2022, the effective income tax rates were 23.5% and 5.3%, respectively. The change in effective tax rates for the three months ended April&#160;30, 2023 was primarily due to the change in forecasted mix of income before federal and state income taxes and estimated permanent differences.  The effective tax rate for the three months &lt;/span&gt;&lt;/div&gt;ended April&#160;30, 2022 was primarily due to the recording of a valuation allowance needed for federal deferred tax assets and certain state net operating loss carryforwards. The January 31, 2018 and subsequent fiscal years remain open for examination by the IRS and state tax authorities.  The Company is not currently under any state examination.</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjA0NQ_66d7af5b-f9b1-4d62-aac5-0ed9b95e3a27"
      unitRef="usd">575000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjA0OQ_d28349cf-b4e0-4b78-8786-fb9f22910dba"
      unitRef="usd">864000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:DeferredTaxAssetsValuationAllowance
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjA1Ng_267b049a-9884-4cf8-a97a-9d8aad049b4e"
      unitRef="usd">10099000</us-gaap:DeferredTaxAssetsValuationAllowance>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjk4NQ_b7e042cc-a9ff-45bc-8db4-674320f0744f"
      unitRef="number">0.235</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EffectiveIncomeTaxRateContinuingOperations
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl82Ny9mcmFnOmNkNzRmZmZlOTI5YTQ2MWZhNTA5NDU2NmVlMzk3MjdiL3RleHRyZWdpb246Y2Q3NGZmZmU5MjlhNDYxZmE1MDk0NTY2ZWUzOTcyN2JfMjk5Mg_3140444b-f441-4cdb-a1d9-82b5079d51aa"
      unitRef="number">0.053</us-gaap:EffectiveIncomeTaxRateContinuingOperations>
    <us-gaap:EarningsPerShareTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RleHRyZWdpb246YzVhNzRhMTEyNWY1NDFkMzliNzgwYjEzMWZiMTE5YjZfNDIz_3caa91fe-ab18-4e56-8d35-2adad6ddecdf">Net Loss per Share&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;Basic net loss per share is calculated by dividing net loss by the weighted-average number of common shares outstanding.  The following table sets forth the computation of basic net loss per share:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.586%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.686%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.539%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.689%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(In thousands, except per share data)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,442)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,084)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted average shares of common stock outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,211&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dilutive effect of common stock equivalents from equity incentive plans (a)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,211&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss per share - basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.09)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.32)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss per share - diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.09)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.32)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:11pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;(a)  At April&#160;30, 2023 and 2022, approximately 85,000 and 169,000 shares of common stock equivalents were excluded from the computation of diluted net loss per share, as the effect would be anti-dilutive since the Company reported a net loss.&lt;/span&gt;&lt;/div&gt;</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RleHRyZWdpb246YzVhNzRhMTEyNWY1NDFkMzliNzgwYjEzMWZiMTE5YjZfNDIx_946bc7b8-eff3-4b45-80e5-0e24bd7258d1">&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.830%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.586%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.686%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.539%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.689%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(In thousands, except per share data)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(1,442)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(5,084)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Weighted average shares of common stock outstanding&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,211&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Dilutive effect of common stock equivalents from equity incentive plans (a)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Totals&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,211&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;16,033&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss per share - basic&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.09)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.32)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Net loss per share - diluted&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.09)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(0.32)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:11pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;(a)  At April&#160;30, 2023 and 2022, approximately 85,000 and 169,000 shares of common stock equivalents were excluded from the computation of diluted net loss per share, as the effect would be anti-dilutive since the Company reported a net loss.&lt;/span&gt;&lt;/div&gt;</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNC0xLTEtMS00ODUwMg_d4157ad9-e220-431b-b46f-b2715ef0e411"
      unitRef="usd">-1442000</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNC0zLTEtMS00ODUwMg_baec872c-f6a5-4419-8ab7-f95aa6f539d6"
      unitRef="usd">-5084000</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNi0xLTEtMS00ODUwMg_079bd9b3-7dad-4415-8b9e-ffceb35c016f"
      unitRef="shares">16211000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNi0xLTEtMS00ODUwMg_a999b2d3-49f6-4cd0-a4fb-e1ec29868926"
      unitRef="shares">16211000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNi0zLTEtMS00ODUwMg_9b19e12c-dec2-424a-a2bb-cda0cb3c3db8"
      unitRef="shares">16033000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNy0xLTEtMS00ODUwMg_4a3709b6-fd5a-4499-bdd1-ad41ad507086"
      unitRef="shares">0</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfNy0zLTEtMS00ODUwMg_6e2804e7-f562-454d-9ded-a6abc2ded0c0"
      unitRef="shares">0</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfOC0xLTEtMS00ODUwMg_399486bd-f16f-42d9-abe4-abf2c9851d6a"
      unitRef="shares">16211000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfOC0zLTEtMS00ODUwMg_605bc589-44a0-4b58-acb4-257d05dbf5c8"
      unitRef="shares">16033000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfMTAtMS0xLTEtNDg1MDI_7a3f42f9-f18d-4be3-8021-4820faff25ea"
      unitRef="usdPerShare">-0.09</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfMTAtMy0xLTEtNDg1MDI_f2165269-cb38-4100-8d0b-6dd8ac1d310a"
      unitRef="usdPerShare">-0.32</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfMTEtMS0xLTEtNDg1MDI_0b172579-1958-4f54-995d-8066625cb0e3"
      unitRef="usdPerShare">-0.09</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RhYmxlOjg2MGMwYzNmNWYyMDQzOTVhNTRiNmY1YTMzMTM4OTgxL3RhYmxlcmFuZ2U6ODYwYzBjM2Y1ZjIwNDM5NWE1NGI2ZjVhMzMxMzg5ODFfMTEtMy0xLTEtNDg1MDI_2b51df7c-bac2-4ff5-a32e-7d5a1ac3022b"
      unitRef="usdPerShare">-0.32</us-gaap:EarningsPerShareDiluted>
    <virc:IncrementalCommonSharesExcludedToDilutiveEffect
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RleHRyZWdpb246YzVhNzRhMTEyNWY1NDFkMzliNzgwYjEzMWZiMTE5YjZfNDM5ODA0NjUxMjY3OQ_8124fdd9-3c33-4da2-9811-858d09caea87"
      unitRef="shares">85000</virc:IncrementalCommonSharesExcludedToDilutiveEffect>
    <virc:IncrementalCommonSharesExcludedToDilutiveEffect
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83MC9mcmFnOmM1YTc0YTExMjVmNTQxZDM5Yjc4MGIxMzFmYjExOWI2L3RleHRyZWdpb246YzVhNzRhMTEyNWY1NDFkMzliNzgwYjEzMWZiMTE5YjZfNDM5ODA0NjUxMjY4Nw_d0ddaaf7-ef68-4b84-80d0-c6408b7fefe6"
      unitRef="shares">169000</virc:IncrementalCommonSharesExcludedToDilutiveEffect>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfMjk1MQ_03f9dfde-ea16-4bbf-9ace-67d695263689">Stock-Based Compensation &lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;Stock Incentive Plan&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company's two stock incentive plans are the 2019 Omnibus Equity Incentive Plan (the &#x201c;2019 Plan&#x201d;) and the 2011 Stock Incentive Plan (the &#x201c;2011 Plan&#x201d;). The 2011 Plan expired in 2021 and no new award may be made under the 2011 Plan.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"&gt;Under the 2019 Plan, the Company may grant an aggregate of up to 1,000,000 shares to its employees in the form of restricted stock units and non-employee directors in the form of restricted stock awards.  Restricted stock units and awards granted under the 2019 Plan are expensed ratably over the vesting period of the awards. The Company determines the fair value of its restricted stock units or awards and related compensation expense as the difference between the market value of the units or awards on the date of grant less the exercise price of the units or awards granted.  During the three-month period ended April&#160;30, 2023, the Company granted 0 awards, vested 0 shares according to their terms and forfeited 0 shares under the 2019 Plan.  As of April&#160;30, 2023, there were approximately 608,435 shares available for future issuance under the 2019 Plan. &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The following table summarizes the stock-based compensation expense related to restricted stock awards recognized in the Company's statement of operations for the three months ended April&#160;30, 2023 and 2022:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.864%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.838%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of goods sold&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;As of April&#160;30, 2023, there was $446,000 of unrecognized compensation expense related to unvested restricted stock units and/or awards, which is expected to be recognized over a weighted average period of approximately 1 year.</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized
      contextRef="ic51b052edc494cff983b99a420d39ac3_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfMjgy_3e110ad0-0963-4aca-9270-cb635fe96187"
      unitRef="shares">1000000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
      contextRef="i3c3e40b19dff4d9b80a30d55daa278cc_D20230201-20230430"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfODQz_ccc64da7-e94e-4225-997f-bddb21e03bb7"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
      contextRef="i3c3e40b19dff4d9b80a30d55daa278cc_D20230201-20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfODYx_201534fb-8d83-449c-9af7-8750177ccfa3"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
      contextRef="i3c3e40b19dff4d9b80a30d55daa278cc_D20230201-20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfOTEw_193d96b4-2839-4ac4-9a1a-61ace2a8a872"
      unitRef="shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="ic51b052edc494cff983b99a420d39ac3_I20230430"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfOTc3_39a3e896-1352-42d5-ba46-9928dd54310b"
      unitRef="shares">608435</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfNDM5ODA0NjUxNzE5MA_9c871119-fb08-426f-b32f-81dbce4623b2">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The following table summarizes the stock-based compensation expense related to restricted stock awards recognized in the Company's statement of operations for the three months ended April&#160;30, 2023 and 2022:&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:54.455%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:9.864%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.835%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.408%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:14.838%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:middle"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Cost of goods sold&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;28&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;55&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Selling, general and administrative expenses&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;75&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;198&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Total stock-based compensation expense&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;103&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;253&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;/tr&gt;&lt;tr style="height:15pt"&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="idce494d0db0c4f8489d6ce35a8ab9ac9_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfMy0yLTEtMS01MjY0Nw_be3e330d-c83c-4a1e-a9f9-86bcdc6ef817"
      unitRef="usd">28000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="i11b048777b3e42b1866ea0d27d2722d7_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfMy00LTEtMS01MjY0Nw_9714947a-39d7-45dc-8422-6aaae4cd9390"
      unitRef="usd">55000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="i9874a256218949168c3a713134d081a8_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfNC0yLTEtMS01MjY0Nw_e2028261-1974-4f54-b062-356de0da27f8"
      unitRef="usd">75000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="ie7278e4f07694d6b92aa5b3f38b98f5c_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfNC00LTEtMS01MjY0Nw_ac7d1bd6-8fc4-4c5b-ae39-4273318a835c"
      unitRef="usd">198000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfNi0yLTEtMS01NTI0Mw_e93d387e-02e2-41a8-86b1-a7706d915056"
      unitRef="usd">103000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RhYmxlOjIzZWE2NDgxNzIyZTRmN2VhYmZiOGZlMWU4N2E2Nzc3L3RhYmxlcmFuZ2U6MjNlYTY0ODE3MjJlNGY3ZWFiZmI4ZmUxZTg3YTY3NzdfNi00LTEtMS01NTI0Mw_9c74e4e4-e414-46a8-94c8-cfb84cdd4111"
      unitRef="usd">253000</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="ic58191435f9940b8aa96e24508179cf1_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfMjc1Nw_6eb3e1c8-ac74-4a9d-b832-94cb8a7d6fc8"
      unitRef="usd">446000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="if7c191c5122144d6bd53e87dd766024d_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83My9mcmFnOmRmMzVlZDkwNjUwMTQ3NTQ5ODhkMzViYWMyNGZjNzM1L3RleHRyZWdpb246ZGYzNWVkOTA2NTAxNDc1NDk4OGQzNWJhYzI0ZmM3MzVfMjkzOA_06e23dbe-0456-4aac-918d-ff5dc3eb9935">P1Y</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:PostemploymentBenefitsDisclosureTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMjE0Mg_630282bf-6497-4be9-b744-5fcd3e95a3a6">Retirement Plans&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company and its subsidiaries cover certain employees under a noncontributory defined benefit retirement plan, entitled the Virco Employees&#x2019; Retirement Plan (the &#x201c;Pension Plan&#x201d;). As more fully described in the Annual Report on Form 10-K, benefit accruals under the Employees Retirement Plan were frozen effective December&#160;31, 2003.  There is no service cost incurred under this plan.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company also provides a supplementary retirement plan for certain key employees, the VIP Retirement Plan (the &#x201c;VIP Plan&#x201d;).  As more fully described in the Annual Report on Form 10-K for the year ended January&#160;31, 2023, benefit accruals under the VIP Plan were frozen since December&#160;31, 2003.  There is no service cost incurred under the VIP Plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following table summarizes the net periodic pension cost for the Pension Plan and the VIP Plan for the three months ended April&#160;30, 2023 and 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:11pt"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.538%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.175%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.838%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.745%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;360&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;298&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected return on plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(199)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(237)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Plan settlement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of prior service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recognized net actuarial loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;134&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;195&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%"&gt;401(k) Retirement Plan&lt;/span&gt;&lt;/div&gt;The Company&#x2019;s retirement plan, which covers all U.S. employees, allows participants to defer from 1% to 75% of their eligible compensation through a 401(k)-retirement program.  The plan includes Virco stock as one of the investment options.  At April&#160;30, 2023 and 2022, the plan held 1,320,482 shares and 1,165,985 shares of Virco stock, respectively.  For the three months ended April&#160;30, 2023 and 2022, the compensation costs incurred for employer match, which is paid in the form of Company stock, was $403,000 and $330,000 respectively.</us-gaap:PostemploymentBenefitsDisclosureTextBlock>
    <us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMjEzMQ_3617c891-eb0d-42fc-bc04-f3d580601d7e">he net periodic pension cost for the Pension Plan and the VIP Plan for the three months ended April&#160;30, 2023 and 2022:&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.538%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:60.175%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.742%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.838%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:17.745%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt;text-align:center"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Service cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Interest cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;360&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;298&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Expected return on plan assets&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(199)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(237)&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Plan settlement&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Amortization of prior service cost&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Recognized net actuarial loss&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;&#x2014;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 7.75pt 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;134&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Benefit cost&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;161&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 7.75pt 2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;195&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;</us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNC0xLTEtMS00ODUwMg_c32ac4db-4699-401e-a066-c5b05f2c426f"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanServiceCost
      contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNC0zLTEtMS00ODUwMg_2457ac93-9dd1-46b6-aa10-aaa2f61726e2"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanServiceCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNS0xLTEtMS00ODUwMg_8ff3773d-56d1-4e31-a9b3-6cca302ccb21"
      unitRef="usd">360000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanInterestCost
      contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNS0zLTEtMS00ODUwMg_d007337e-94fd-4854-afed-510e4feba8d8"
      unitRef="usd">298000</us-gaap:DefinedBenefitPlanInterestCost>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNi0xLTEtMS00ODUwMg_154d7bd0-d89e-4980-9ca2-43a07cea998f"
      unitRef="usd">199000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets
      contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNi0zLTEtMS00ODUwMg_97f11d95-1193-42fa-be88-920c6ffb5769"
      unitRef="usd">237000</us-gaap:DefinedBenefitPlanExpectedReturnOnPlanAssets>
    <us-gaap:DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement
      contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNy0xLTEtMS00ODUwMg_1bb2579e-8748-4958-9b35-70b514faf143"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement>
    <us-gaap:DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement
      contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfNy0zLTEtMS00ODUwMg_63813fb7-59c5-4355-bfec-4a64ade1c4a1"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfOC0xLTEtMS00ODUwMg_3bf0f9dc-e167-471b-a7dc-591e7bf15811"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit
      contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfOC0zLTEtMS00ODUwMg_62522cf7-8ccb-43fa-81c8-64f33ef493a3"
      unitRef="usd">0</us-gaap:DefinedBenefitPlanAmortizationOfPriorServiceCostCredit>
    <virc:DefinedBenefitPlanRecognizedNetActuarialGainLoss
      contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfOS0xLTEtMS00ODUwMg_f22bb4b7-5b5f-4c67-96e0-6b6252af7c8b"
      unitRef="usd">0</virc:DefinedBenefitPlanRecognizedNetActuarialGainLoss>
    <virc:DefinedBenefitPlanRecognizedNetActuarialGainLoss
      contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfOS0zLTEtMS00ODUwMg_49cdf1fe-ff10-4c12-8fca-4f813e511d46"
      unitRef="usd">-134000</virc:DefinedBenefitPlanRecognizedNetActuarialGainLoss>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfMTAtMS0xLTEtNDg1MDI_703ff01f-42c4-4522-9c81-48fb8f00f59d"
      unitRef="usd">161000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost
      contextRef="i7ddcf5d18c7b41be96c3018604900e8f_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RhYmxlOjg4NDdhY2EzNGY2ZjQ5ZDdhY2E0Mzc4MzUyZjBiYTFkL3RhYmxlcmFuZ2U6ODg0N2FjYTM0ZjZmNDlkN2FjYTQzNzgzNTJmMGJhMWRfMTAtMy0xLTEtNDg1MDI_9a802d6f-27e1-46f8-9c9f-480264601618"
      unitRef="usd">195000</us-gaap:DefinedBenefitPlanNetPeriodicBenefitCost>
    <virc:DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent
      contextRef="ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430"
      decimals="2"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTU3Ng_d5e6626b-0bd6-4684-9632-ee4d9fceaf43"
      unitRef="number">0.01</virc:DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent>
    <us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent
      contextRef="ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTU4Mg_5f57beb6-7082-42c0-973f-373e2ceb0f62"
      unitRef="number">0.75</us-gaap:DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent>
    <virc:DefinedContributionPlanNumberOfCommonSharesHeld
      contextRef="i0afd8d5b22d746a699be9a50df797a36_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTc0Nw_520ca33c-5481-4c7b-977f-a73cbaed4c77"
      unitRef="shares">1320482</virc:DefinedContributionPlanNumberOfCommonSharesHeld>
    <virc:DefinedContributionPlanNumberOfCommonSharesHeld
      contextRef="iddb903a8928b42768b5ce48dbcfc0fa8_I20220430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTc2MQ_86903df1-2daf-44f4-8bd6-81a31d0bb8cd"
      unitRef="shares">1165985</virc:DefinedContributionPlanNumberOfCommonSharesHeld>
    <us-gaap:DefinedBenefitPlanContributionsByEmployer
      contextRef="ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTk0MA_899e4a9d-8aef-4278-96a9-6d7bf46c35fc"
      unitRef="usd">403000</us-gaap:DefinedBenefitPlanContributionsByEmployer>
    <us-gaap:DefinedBenefitPlanContributionsByEmployer
      contextRef="iae9a75dced8442fea285b7df23400c30_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83Ni9mcmFnOmI3ZDg1M2FhYzIxNDQ5YjNiNjE5MjgxM2Y3NjUwYjY2L3RleHRyZWdpb246YjdkODUzYWFjMjE0NDliM2I2MTkyODEzZjc2NTBiNjZfMTk0Nw_3d95ec5c-1a77-4cdd-aa32-8fe27d52586c"
      unitRef="usd">330000</us-gaap:DefinedBenefitPlanContributionsByEmployer>
    <us-gaap:ProductWarrantyDisclosureTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RleHRyZWdpb246YjhhYmVjYTMyODM2NGNkZjk1Njg3Y2UzNGY5NjM4NTBfMTA0Ng_accf60f6-1ebf-4f14-96a2-c9494dbee4c5">Warranty Accrual&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;The Company provides a warranty against all substantial defects in material and workmanship. The standard warranty offered on products sold through January 31, 2013 is ten years. Effective February 1, 2014 the Company modified its warranty to a limited lifetime warranty. The warranty effective February 1, 2014, is not anticipated to have a significant effect on warranty expense. Effective January 1, 2017, the Company modified the standard warranty offered on products sold after January 1, 2017 to provide specific warranty periods by product component, with no warranty period longer than ten years. The Company&#x2019;s warranty is not a guarantee of service life, which depends upon events outside the Company&#x2019;s control and may be different from the warranty period. The Company accrues an estimate of its exposure to warranty claims based upon both product sales data and an analysis of actual warranty claims incurred.  &lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of the Company&#x2019;s warranty-claim activity for the three months ended April&#160;30, 2023 and 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:11pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.321%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.176%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.378%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.380%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs incurred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(41)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(34)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Ending balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ProductWarrantyDisclosureTextBlock>
    <virc:ProductWarranty
      contextRef="i9e44ea096ef14842a0c5fcb454869591_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RleHRyZWdpb246YjhhYmVjYTMyODM2NGNkZjk1Njg3Y2UzNGY5NjM4NTBfMTk5_e8a50dd9-c527-48e9-add3-fdf634e906cf">P10Y</virc:ProductWarranty>
    <virc:ProductWarranty
      contextRef="i9e44ea096ef14842a0c5fcb454869591_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RleHRyZWdpb246YjhhYmVjYTMyODM2NGNkZjk1Njg3Y2UzNGY5NjM4NTBfNjE3_e8a50dd9-c527-48e9-add3-fdf634e906cf">P10Y</virc:ProductWarranty>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RleHRyZWdpb246YjhhYmVjYTMyODM2NGNkZjk1Njg3Y2UzNGY5NjM4NTBfMTA1Mw_657ab464-ba97-455b-8843-f6b0ada1c04a">&lt;div style="margin-bottom:6pt;margin-top:6pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The following is a summary of the Company&#x2019;s warranty-claim activity for the three months ended April&#160;30, 2023 and 2022:&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:6pt;margin-top:11pt;text-align:center"&gt;&lt;table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:95.321%"&gt;&lt;tr&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:59.176%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.378%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:0.566%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td style="width:1.0%"/&gt;&lt;td style="width:18.380%"/&gt;&lt;td style="width:0.1%"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"&gt;&#160;&lt;/span&gt;&lt;/td&gt;&lt;td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;Three Months Ended&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2023&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="3" style="border-bottom:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%"&gt;4/30/2022&lt;/span&gt;&lt;/td&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="padding:0 1pt"/&gt;&lt;td colspan="9" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(in thousands)&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Beginning balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Provision&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;41&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;34&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Costs incurred&lt;/span&gt;&lt;/td&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(41)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#cceeff;padding:0 1pt"/&gt;&lt;td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;(34)&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Ending balance&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="background-color:#ffffff;padding:0 1pt"/&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;$&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"&gt;600&#160;&lt;/span&gt;&lt;/td&gt;&lt;td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;td colspan="3" style="display:none"/&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrual
      contextRef="ied655037fda84d3f8b3feb75fdddb53f_I20230131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfMy0xLTEtMS00ODUwMg_98b50e8e-5441-4f9b-90f4-4d1aa2e9a944"
      unitRef="usd">600000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i35924208d3d746c491b0ea2b2e4d7e29_I20220131"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfMy0zLTEtMS00ODUwMg_701dfd20-6904-4f03-93cc-999ceea87b11"
      unitRef="usd">600000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNC0xLTEtMS00ODUwMg_54455d9d-34ab-4d2a-ac52-db55599ee1f9"
      unitRef="usd">41000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNC0zLTEtMS00ODUwMg_47f29dd5-d59b-48a9-ae9b-4168e9d67c84"
      unitRef="usd">34000</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyExpense
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNS0xLTEtMS00ODUwMg_8d759edd-9930-4e08-b400-529a95016334"
      unitRef="usd">41000</us-gaap:ProductWarrantyExpense>
    <us-gaap:ProductWarrantyExpense
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNS0zLTEtMS00ODUwMg_12563633-7210-4811-ac02-505ecb32c283"
      unitRef="usd">34000</us-gaap:ProductWarrantyExpense>
    <us-gaap:ProductWarrantyAccrual
      contextRef="id96edf3311854e0493cec4b46a1f41ce_I20230430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNi0xLTEtMS00ODUwMg_99fc22c1-24da-457a-a2e6-19aee32701cb"
      unitRef="usd">600000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i27a46d3621b9440b82c682a1833d8234_I20220430"
      decimals="-3"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl83OS9mcmFnOmI4YWJlY2EzMjgzNjRjZGY5NTY4N2NlMzRmOTYzODUwL3RhYmxlOjJkYjY0ZDQzMTQ3ODRiYmFhMWQ0ZWU4OGI5Zjg0ZDcwL3RhYmxlcmFuZ2U6MmRiNjRkNDMxNDc4NGJiYWExZDRlZTg4YjlmODRkNzBfNi0zLTEtMS00ODUwMg_017b4e43-883b-44b0-9f36-36e1d68287b6"
      unitRef="usd">600000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:LossContingencyDisclosures
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfOTI4_a32d93ba-2f83-4157-8261-62c2f9746246">Contingencies&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company has a self-insured retention for product losses up to $250,000 per occurrence, workers&#x2019; compensation liability losses up to $250,000 per occurrence, general liability losses up to $50,000 per occurrence and automobile liability losses up to $50,000 per occurrence. The Company has purchased insurance to cover losses in excess of the self-insurance retention or deductible up to a limit of $30,000,000. The Company has obtained an actuarial estimate of its total expected future losses for liability claims and recorded a liability equal to the net present value.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span&gt;&lt;br/&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"&gt;The Company and its subsidiaries are defendants in various legal proceedings resulting from operations in the normal course of business. It is the opinion of management, in consultation with legal counsel, that the ultimate outcome of all such matters will not materially affect the Company&#x2019;s financial position, results of operations or cash flows.&lt;/span&gt;&lt;/div&gt;</us-gaap:LossContingencyDisclosures>
    <virc:SelfInsuranceRetention
      contextRef="i7c87a2799d93477db744937a9581ada5_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfOTc_baa452f3-c0b9-4a25-8f03-c6f9da9189f7"
      unitRef="usd">250000</virc:SelfInsuranceRetention>
    <virc:SelfInsuranceRetention
      contextRef="i50fc8f506f0e4aa5b2177398ab79ad82_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfMTYx_a2e6095b-6eb9-43a1-b2b3-ee9a2812f9c7"
      unitRef="usd">250000</virc:SelfInsuranceRetention>
    <virc:SelfInsuranceRetention
      contextRef="i1e68fc9de49749c2bdd567007cdbb5c2_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfMjEx_99c5b664-0340-41f3-9e36-1414a459e56a"
      unitRef="usd">50000</virc:SelfInsuranceRetention>
    <virc:SelfInsuranceRetention
      contextRef="ic0190406847046579553da1fad6bd7c0_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfMjY3_faaaf4f0-3dcc-46ae-be48-f2eaae8eae5b"
      unitRef="usd">50000</virc:SelfInsuranceRetention>
    <virc:SelfInsuranceRetention
      contextRef="i72ec33ce05b649ccb94d1610bf10ad39_I20230430"
      decimals="INF"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84Mi9mcmFnOjEzZTg2NjA5OTE0MTQ5MzRiZjUzNzUwZGZmODA2Y2UyL3RleHRyZWdpb246MTNlODY2MDk5MTQxNDkzNGJmNTM3NTBkZmY4MDZjZTJfNDEx_91fc8334-23b1-46f9-ac3d-96e345476650"
      unitRef="usd">30000000</virc:SelfInsuranceRetention>
    <virc:DeliveryCostsTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84NS9mcmFnOjJjNGEwYjY2OGIzNDQwOGM4MzcxODE5MGEzOWIzZjEyL3RleHRyZWdpb246MmM0YTBiNjY4YjM0NDA4YzgzNzE4MTkwYTM5YjNmMTJfNTIz_3b1c13ac-f676-45d4-bb7b-e6ead9d65fd1">Delivery CostsFor the three months ended April&#160;30, 2023 and 2022, shipping and classroom delivery costs of approximately $3,343,000 and $3,254,000, respectively, were included in selling, general and administrative expenses in the accompanying condensed consolidated statements of operations.</virc:DeliveryCostsTextBlock>
    <virc:ShippingAndClassroomDeliveryCosts
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84NS9mcmFnOjJjNGEwYjY2OGIzNDQwOGM4MzcxODE5MGEzOWIzZjEyL3RleHRyZWdpb246MmM0YTBiNjY4YjM0NDA4YzgzNzE4MTkwYTM5YjNmMTJfMTI2_4649827f-9506-4c60-a80c-0ee8871fa48c"
      unitRef="usd">3343000</virc:ShippingAndClassroomDeliveryCosts>
    <virc:ShippingAndClassroomDeliveryCosts
      contextRef="ia8a14513e25640c7a5f60881a9b87337_D20220201-20220430"
      decimals="0"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84NS9mcmFnOjJjNGEwYjY2OGIzNDQwOGM4MzcxODE5MGEzOWIzZjEyL3RleHRyZWdpb246MmM0YTBiNjY4YjM0NDA4YzgzNzE4MTkwYTM5YjNmMTJfMTMz_ed6ed595-7d4b-438a-9c4b-5c9cc6437187"
      unitRef="usd">3254000</virc:ShippingAndClassroomDeliveryCosts>
    <us-gaap:SubsequentEventsTextBlock
      contextRef="i355055723bc34239a2757a2eb55dfdca_D20230201-20230430"
      id="id3VybDovL2RvY3MudjEvZG9jOjlmMjI5NTBhNjJiNDQ1YzU4ODg2NzgxZTQ4N2ZmOGQ2L3NlYzo5ZjIyOTUwYTYyYjQ0NWM1ODg4Njc4MWU0ODdmZjhkNl84OC9mcmFnOmU2ODU2ZWQwMWY0MTRlNmE5OWIzNzA5MGQxMzQzMzg3L3RleHRyZWdpb246ZTY4NTZlZDAxZjQxNGU2YTk5YjM3MDkwZDEzNDMzODdfMzk_67b0273e-021d-4e8c-ba23-f48feaa1f25a">Subsequent Events&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;On May 19, 2023, the Company executed Amendment No. 3 to the Restated Credit Agreement, with an effective date of May 5, 2023. See &lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:112%"&gt;Note 7&lt;/span&gt;&lt;span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%"&gt;.&lt;/span&gt;</us-gaap:SubsequentEventsTextBlock>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>56
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
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
M;.1<.B2!E"YS?2_6'Z#VIVOX8I$K^TO6M:WGD'BIM"AJ,"HH&*^>]*F.PQ8
M>=H!?@WP]P'A 4!0 P+K:*7,NG5#-8V&4JR)--;(9A8V-A:-WC!NLCC3$F\9
MXG3TP.DR81H2,A$\P>Q4*R5REE!S/-/XP+1I142*5P462V:RN )RRV-1 #G]
M*)1Z0\[)P^R&G)Z\(2>$<?(E$TM%>:*&KD:AYG5N7(NZKD3Y!T0%Y$YPG2GR
M#B4ENW@7'6R\]#=>7OM'"<>EO""!=T9\SP]:]$R>#_>/R F:H >6+SC U\3T
M8$B_C^=*2ZSQ'VW1J]C#=G;SW0]426,8.4BL0*[ B5Z_ZO2\MVVNOQ#93B#"
M)A#A,?;H$[:I'(NGS<D*V;-(TXM6T7DG##'\JVWU+59=[S)LK'9D=1M9W:/Y
M^:PSD"3>20RSB1FT*>V^9#I>B&S'[U[C=^]H.J9U=Z;)3^P\]J,_(QQLF6KZ
M1"!-L?NVA:#B[6ZEP=M+U+\6G:#;GJ9^([?_W^K93=*A6NH_JY9:K,*K\&I/
MI+O5; N0"SN#% I9<EUUI.:T&7-CV]WWSJ]Q_%73ZB]--3OOJ%PPKD@.*5)Z
M%WT,FZSF4;71HK0M?2XT#@B[S'"$@S0&>)\*H3<;\X+F3T'T!U!+ P04
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
MO!,K#?C[#2'L[:;\9M9\MEW^"U!+ P04    " "-:,Q6,_86]W,"  #F!0
M&    'AL+W=O<FMS:&5E=',O<VAE970Y+GAM;*U446_3,!#^*U:8@$ECR9(R
MT$@CM=T0/$RJ5@8/B <WN39FCIW9EW;[]YR=-'135O' 2^RS[_M\W\7^TJTV
M=[8$0/90267'08E87X2AS4NHN#W5-2C:66E3<:30K$-;&^"%!U4RC*/H/*RX
M4$&6^K6YR5+=H!0*YH;9IJJX>9R"U-MQ<!;L%F[$ND2W$&9IS=>P +RMYX:B
ML&<I1 7*"JV8@=4XF)Q=S$8NWR=\%["U>W/FE"RUOG/!UV(<1*X@D)"C8^ T
M;& &4CHB*N.^XPSZ(QUP?[YC_^RUDY8EMS#3\H<HL!P''P-6P(HW$F_T]@MT
M>MX[OEQ+Z[]LV^5& <L;B[KJP%1!)50[\H>N#WL XAD&Q!T@?@X8O0!(.D#B
MA;:5>5F7''F6&KUEQF43FYOXWG@TJ1'*_<4%&MH5A,/L5O&F$ @%FVEEM10%
M=\$"::"?A9;I%9N57*W!,J%H0^=WI98%&/N&7=TW A_9VSDWE%L"BIS+8_:.
MW2XNV=NC8W;D,-]*W5BN"IN&2"6[@\.\*V_:EA>_4%["KC416W:E"BB>XD.2
MVNN-=WJG\4'"26U.61*=L#B*DX%Z9O\.CP^4D_3M3SQ?\@)?WV?7YL'>_IPL
M+1JZ[;^&NM>RCX;9G0-<V)KG, [HB5LP&PBRUZ_.SJ-/0]+_$]F31HSZ1HP.
ML6?SSAAX\9LNO;]Y)PSYPY#HENG<,SF7VF11&F[VE1S*:,L+]YY,!6;MG<2R
M7#<*V]O4K_9F-?%O]-GZE$RL]9R_-*T#7G.S%LHR"2NBC$X_D 68UE7: '7M
M'^92(SUS/RW)B,&X!-I?:8V[P!W06WOV!U!+ P04    " "-:,Q6-*=W0F $
M  #7"@  &0   'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6RE5FUOVS80_BL'
M%2A:()5D.WU!8AMPLG;MAJ!9O'0#AGV@I;/%EB)5DHKC_?K=D9+B#FY29%]L
MD;Q[[I[CPR.G6V._N K1PVVMM)LEE??-29:YHL):N-0TJ&EE;6PM/ WM)G.-
M15$&IUIEXSQ_E=5"ZF0^#7.7=CXUK5=2XZ4%U]:UL+LS5&8[2T9)/W$E-Y7G
MB6P^;<0&E^BOFTM+HVQ *66-VDFCP>)ZEBQ&)V?';!\,/DG<NKUO8"8K8[[P
MX$,Y2W)."!46GA$$_=W@.2K%0)3&UPXS&4*RX_YWC_XN<"<N*^'PW*@_9.FK
M6?(F@1+7HE7^RFS?8\?G)>,51KGP"]O.-D^@:)TW=>=,&=12QW]QV]7A1QS&
MG<,XY!T#A2Q_$E[,I]9LP;(UH?%'H!J\*3FI>5.6WM*J)#\_/Q-..C!KN+3H
M4'O!M9IFGJ#9("LZF+,(,_X.S 0NC/:5@[>ZQ/);_XQ2&O(:]WF=C>\%7#0V
MA4E^!.-\/+D';S+PG 2\R7?P/MJ-T/*?0.\(SHUV1LE21&7H\AOZ7(YW4@M=
M2*%@29-(,O0._EJLG+<DI+\/52@F<'PX 3Y<)ZX1!<Z2AF/9&TSF3Y^,7N6G
M]] ['N@=WX?^X]OX")C?*Z3#4YBZ$7HG]09:+=I2>BRA,+3=VL6OKJ(T6 _%
M<W?%J\0-P@I1 _%OA"4[J0.P+<D:2?B^"N-6>P[36$D@C4('&]1HA5([7L?&
M1U]/B5WKD$C8) ?/KM-E"C\O%I?/@1H6&7FTLMY+2.K8R/I];UKK6J$]>!/P
M;,OQ>,7BIE7!,%2$%Y=8M%9ZV5F\O2TJH3=(<JIKZ;A/I; (A"A_M3MBIQV4
M!K3Q%+E0;4FE5*K'^V\R9$;0%K^VDLNSVATB?KA"S):W2*''P_7G %1U:.+6
M'BY_*$&,'[WX*%".,,I?_!8@KJA /,I'O'8U% F6+_Y,@;3B\)$"<95I%;'F
M#$3(CGP^MSJV[R&]AX'N2DGV%FEGN]H/JCF/8G[ZY,UX]/K4P4+KEC"NL#'6
M T7K.?\:"LLN:^D*,MFAL(#<Y. 704YV%\_P9!1;%3QCT'%^R@AQB6'"Y.CT
M>1JGX$/,PS12=PVG%IHN029P%"0BRL_4_2,AIBQ+9$UH+- Y"AL2$[ 6TO9;
M&O?A[ISUK%/XV)"*@F3(DNXK-]#RE46$.C;OR(M:KU0=JZX!!^&PB/OPDA0I
M=2D+P9=JK^<>W%?"$Z$=[R7>-G0!\U8=+B0G=:B2QRFPFNC*54&>\8E"N(?+
M7@D725.9*",*9TT=XNU)\2'=^)@YFQS!JJ4O0R)Z].']?[WLP1--O8:RH4<,
M"8,JY/H6U@EP3^.DO&C')I^D+0Q<K#<I'0-+@K^C(/D4MBO2FJ0M1I<>NIFR
MO<=&C783GE2L4:(:WQW#[/!J6\3'RIUY?/)="+N1U%X5KLDU3U^_3,#&9U0<
M>-.$I\O*>'H(A<^*>@-:-J#UM:&B=P,.,+QEY_\"4$L#!!0    ( (UHS%:Y
MW>*B% 8  * .   9    >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;*U7VV[;
M.!#]%<+%]LFQ'<>];',!DK1%6Z!HT;3=A\4^T-+(XD8B59*RX[_OF:&LR(43
M%-A]B&-9<SES.T.>;9R_#2515'=U9</YJ(RQ>36=AJRD6H>):\CB3>%\K2,>
M_6H:&D\Z%Z6ZFLYGL^?36AL[NCB3WS[[BS/7QLI8^NQ5:.M:^^T556YS/CH>
M[7[X8E9EY!^F%V>-7M$-Q6_-9X^G:6\E-S798)Q5GHKST>7QJZL%RXO =T.;
M,/BN.)*E<[?\\#X_'\T8$%641;:@\6]-UU15; @P?G0V1[U+5AQ^WUE_*[$C
MEJ4.=.VJOTP>R_/1RY'*J=!M%;^XS3OJXGG&]C)7!?E4FR2[6(Q4UH;HZDX9
M"&ICTW]]U^5AH/!R]H#"O%.8"^[D2%"^UE%?G'FW49ZE88V_2*BB#7#&<E%N
MHL=; [UX<4,Z.*LK$[=*VUQ]U!:U0-:C^A9(N4*]"=$@>@IGTPB'K#;-.N-7
MR?C\ >,GZJ.SL0SJC<TIW]>? FB/=KY#>S5_U.!EXR?J9#96\]G\Y!%[)WWT
M)V+OY#>B__MR&:)'E_QS*-!D9W'8#D_.J]#HC,Y'&(U ?DVCBZ=/CI_/3A]!
MN>A1+AZS_E]K]+\9_UH26L_?@BK !HKR-M,\6KI21>NMB:TG94*2R=5RJ^@N
M>MA2X=[)& T>2Z6;QKL[L5MMU;/9'^PIPL&UJQMMMT^?O)P?OS@-*KH(^T%7
MA._;QF2Z@H++LM9[8U>J\*Y6'UI+D%27[0HCHTAGI=J2]N.#)AO2MQVDB7I'
M-J,]N8&;96NJ/$A>,@U_P!#,RIH"[Y$@7;O6QL#0C5TC9<YO5=X*+M8Q8!T;
M368:R5,*T>P @ ;)=S@8?*$S@PPA(X+&Z\;D()@*K 6SGGZTQDMAQ&'B!O*!
MO;#\L!RI2A/UE;UUF@A#5=JO2+7-$;(&_ PZ1*DUC/0AC"&W=$@>/'@T@\3B
MJ0(RY,$% -!A$#%\<*+BH7A3J%*]+C&,M8N]%G:8J,L@OV:(F(O= <ZERR1A
M4H>CME$KLN2E-'27$:$VF0[HIK4VP%Q1:@>L+"\(PGYA2\"^MX"(#)QP\DOC
M\Z-&>\S 4MM;51BK;29HG:IY-XJ;HN+!'19B$%./$<Z-0_$18FY2?X,4,CQT
MDGO]]QXYRW/#:!_J0B0 O0&H:7*0U[6$H$JL'*119UGJ0_9BUI*'I:X0 0T!
M[KF5SI I"BG-&P>4AA<SS+ ,ZO+6^!#'C]D?SJ2Q&6L^Y)-[)I2FZ3L8!("6
MC:%7G*@;RIS-Q^A?)."^PWN#,CN27>WW.]Y8L%1LI>C2KRM.DI7>QA_R2VB&
M36G #)'P'H5M]/9@; %E)NX\I#ISW*F9@8L>ST2I=X9GHPO\N_&9D]C"85XS
M/#'6MM+;F)J6=D.;)H!EF,+&^*PP?HP_41E<H4$*$^")E]X\]<B.3U-^-\AL
M+H!X0/-6J## D>=):QH R4HM$Q[)^[;I1D.F'+BAARD/R>_UI^_O7Q\=_]D/
M/-5-Y;8$%E@&DI*SV+!3.XZ"+,8\I+PM4N1[D_\;(3)IHUXX+:@/&@E#-YX<
MIW6_/QTA:HD6D7K"XA$&90&L\#1-O#5^V6WW0/?+M'@A8+L2)<Q(UX-XOQY8
M*GSXY"!_(;$]FGAP)]"AE=!9X&'8;61F(WV+SM^M9#'Y;YNODA^D'ENI*'#D
MQ;@%BEQEHY>\5V0 NO9+>G2'HWW8%?Z>X '/KMA=,B%O!U8FZI,5%K(KQU'A
M4&S"> B3UKIJ!1YW?@]VS)->M1T/.C#%SJ?$)0>+''<.9H#4F]VR@7]T=R;Y
M[=<.ZG SV,7W*:EU3GSX& !*?E',91N%.JR+"*DVR?E8)<!=/7H7IWR^Q\2P
MD+Y[(!VGJ@U4M)7BWMH1&UB*CSI-)<<$SC5J*=1W.M15+5K=JR9=<L!/.&1
M(W4KKB[%$7BM]<RTI_W8':(L\)#;".$SF>>N74:&M!.='#J%3@>W!K3=2NY&
M6*BLD2X0_:_]]>LRW3KNQ=/=[2/.%4"*^2^@.IN\>#92/MV'TD-TC=Q!EBZ"
M0^5KB2LD>1; ^\*YN'M@!_VE].(G4$L#!!0    ( (UHS%9LUWZFU@(  %0&
M   9    >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;)55[V_:,!#]5TZ9-&W2
M1-) ?Z@#)&"KM@^=4%G7#],^F/@@5AT[LR]0_ON='4BIU"+M"[&=>^_>77R/
MX=:Z1U\B$CQ5VOA14A+5UVGJBQ(KX7NV1L-O5M95@GCKUJFO'0H9095.\RR[
M2"NA3#(>QK.Y&P]M0UH9G#OP354)MYNBMMM1<I8<#N[4NJ1PD(Z'M5CC NF^
MGCO>I1V+5!4:KZP!AZM1,CF[G@Y"? SXI7#KC]80*EE:^Q@VW^4HR8(@U%A0
M8!#\V. ,M0Y$+./OGC/I4@;@\?K ?A-KYUJ6PN/,Z@<EJ1PE5PE(7(E&TYW=
M?L-]/>>!K[#:QU_8MK&7@P2*QI.M]F!64"G3/L73O@]'@*OL#4"^!^11=YLH
MJOPB2(R'SF[!A6AF"XM8:D2S.&7"1UF0X[>*<33^P7V;%(5M#"FSAKFSAM<%
M<M_)#U/B%"$P+?9TTY8N?X.N#[?64.GAJY$H7^)3EM;IRP_ZIOE)PDGM>M#/
M/D&>Y?T3?/VNWG[DZ[_%]USK@H21PDD/][44A,!;F)7"K!&4>=D590I5:X3?
MDZ4GQU?ISVN]:5,/7D\=QNO:UZ+ 4<+SX]%M,!F_?W=VD7T^4=B@*VQPBOW_
M/^1INI\EPLQ6M3 [P(W0#3?(@] :3G30PX=DLKCWR4=0WC<H8;D#8J8;901W
M4+R!GEI^,/9FLI@REJT&"LMS+]&).+MV%6B4 U'76A5BJ;0BIK9@FQ@KV28X
M74!9K8(6":LNJ2<^B(WHP0-"*3;\L;U''S"Q)A;=26X(C"78L2,*:>M %6X&
M<Q>ZX5O-4@3QC_48 Z7RA;:1RK4GCDUG(PP%@7342*[K$()/-?M2(+-[/3S5
MA"[(51Q=4.^U2Y$>37J%;AW]S$/L:3OTW6EGF9/6*9[#6[^]%6ZMC >-*X9F
MO<OS!%SK8>V&;!U]8VF)72@N2[9]="& WZ^LI<,F).C^2,;_ %!+ P04
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
M 1,/Z&-MWMAGMTGK%&H0#("*HD+\7OQS9 UY.!%.LS_AI3S'@Q&Y^B^(4+C
M9*?<EJPJ5"Z@$U2TWO.5V+-<"]M89&.IK63*82#HE<'.6/4[X>XZ._*$)7F=
M01$?7,L:RQ<G(4D'L?!,U#R0Z1).\QY4'B.08S5[;T\I4(K6@L,(_0Y^5@BX
M?)$F52R/5X.800@78Q8M0Q+Z%6FX]20%//]4;TKO&.\LKA!<O2\YUZ*O]+,T
M1RJRVH.3_ *\7_'W<A5\F6I3Z1"/-9P('!2BK->H1'5(*;@C4Y"L5K7'.;94
MKMR><IWZ0,/J/S0G#Q,_/O31#HQ!G-A7'$@!.[CM'F2SDFUJHJ"JG!-TUM'[
M7_^_6)T/T[$/8TC:&D0UNHF!9;/+O10GP3NN):?!8!V#$*X(JWK/=+S(E041
M@0[\Y&T[KBF0H73&VP)U$:$*^F8:FI4:224M6CQYPPX25]*GYZGUX!T-;^0W
MEO\&K&7()#QT:TIT@S-U^L6^+L/1)R<X]DHVX6N$KW,>Y( T$2LN,V.0(*0,
M).)^ 1.1Q8\'?5M?,&Q+OPJ@R1TJ$5!0U2;=^M!'C#!/PS%#98VUP\.^:2KD
MQ(L,QU1I:X_@;K@X 4W6(+%)V6_F(H]=/E594=:0&WH-[6( 8_T*'DZ9M;?5
M9TDLYUV'MP4@H,;WT9)[7%[+QB'K&IG:8(2;CG*A2I[/^UR)E<_?V$>Y (!M
MI<O, \7;I->7M8V I'=</)/1S=/'/\.*?Q[?7/2IQ#:KP4%##'.,SFP1U]ZP
MA.9C4*&B0CX>>>@.KTE\_PO^#MV/RT96AYD8V<ZFMAITH^1'Y]AQX-4ZACDB
M)=0@. *FH4CDH?I ZW%"19@-_6%KFWSRV=0 3+S&%>MFM]JX2\^H:<T/,6-@
M$5R;G@4M^T)EH?;RG,)]]PUD]@^P#,'BZ+("R.9.LK2-46![0QHBC3U%<D12
M*[F#:NL5 *5MU8V5)-8=I##7]>Q\E18;(V.87SL0TGD"@-"<:Y3*.","A#>U
M@'E.2A^#XU/H-_X]"&R>/52B/5]Y_%%.^#U5AK>]\.*U$<9#F+OIH8<*-HQ1
M9J_! $IV7@AH.IR,ACS*MW<)O?.&8XB$S_UTR>/?<>N*/3% C7OG!7U\E6:I
MQICS/8W[R?S*7R?)@CZ_@DTX-1XMZ0J;]2HLPM&ZD/1N/+H(?W]U ^:)DOF8
MDMD$G=>U]:65.4^6X3I?T$<&PYGIXN"Z:WH4=@L0J<QC ""J.8ZQ9F<-#@I0
MUF'T8UQWRXD"3Q8YG4S"=3:EIY-:@C"O&!2!*1R[Y3;II:*,GV697"7XOUK2
MW_[%56:7 A,/VL;YJ>(=]V-[0<D@P>_JE*H3-YH/H.\/?%GB\@'LBKKHEM0V
MN?RD=NI'DNLUZH\?V-=QFFG>#_N^JAU#\("3, ;^$J=N/T;(4(/_C0%,F#U-
MQOTN%B_HJ;49LB!A"M],^Y/IU ]0-.LOKOSM'"&83>9\NZ"$+TOR,W!RPVF$
M K*&N]JE ]N5R'U):0/<FH^H E&+^2F*NP&;]9/%F'Y'(?K6F5E_/EUVD/L*
M1:/^U?B*?E)PK.%7* PQ;B<QRF'$B.$#@E)&[9K=VDG([L[WM)@MZ-QK\/#H
M8T0AS<9_<N'! CS"=XEVM?VJ\Q ^9AR.AT]"'X1!:^%2N ;I:+"8]4(C;1Z<
MKORGC95VF)?\[1;O*-+P >ROM7;- PMHOW7=_P]02P,$%     @ C6C,5M)D
M@<RM"P  -!X  !D   !X;"]W;W)K<VAE971S+W-H965T,38N>&ULG5G;DMLV
M$OT5E#).["I9HBXCC6]3)=N[M4EM;)>=S3YL[0-$0A(R),$ H&3MU^_I!GB1
MK)EQY66&I-CH^^D#\/7!V#NW4\J+KT5>NC>#G??5R_'8I3M52#<RE2KQR\;8
M0GK<VNW855;)C(6*?#Q-DL6XD+H<W+[F9Y_L[6M3^UR7ZI,5KBX*:8]O56X.
M;P:30?/@L][N/#T8W[ZNY%9]4?Y?U2>+NW&[2J8+53IM2F'5YLU@-7GY=D[O
M\PN_:W5PO6M!GJR-N:.;G[,W@X0,4KE*/:T@\6^OWJD\IX5@QI]QS4&KD@3[
MU\WJ?V??X<M:.O7.Y/_6F=^]&=P,1*8VLL[]9W/XAXK^7--ZJ<D=_Q6'\.YT
M.1!I[;PIHC L*'09_LNO,0X]@9OD'H%I%)BRW4$16_E>>GG[VIJ#L/0V5J,+
M=I6E89PN*2E?O,6O&G+^]KU:^]=CCY7H?IQ&J;=!:GJ/U$S\:DJ_<^)O9::R
M4_DQ+&C-F#9FO)T^N."JLB,Q2X9BFDQG#ZPW:]V:\7JS!]P2[[5+<^-JJ\1_
M5FOG+4K@OY><#6O-+Z]%;?'253)5;P:H>Z?L7@UN?_QALDA>/6#IO+5T_M#J
M]R;@<2GQL?;.RS+3Y1:5F<LR54Z@3X7?*?'.%)4LCS_^<#.=+%\YD9MR^]PK
M6Z!F(7M0B(JDUW/TI7LIYN-9,J;HB\EX-@E7S;.I>*I+K&IJ!W7NF?BL]B;?
MD][4JDQ[0?:)*\K@9#K!Q62)BRDNIC?#Q7(N/L(D*^;#Z\4<?Q?X:3Y<OK@6
MOQDO\V#1#,]OKL5T,ES.YV(V&\X7+\0_E7-H VM5Z45E+'?R-!G.%E.QQ-]$
M3&Z&+Y)K\<&4S\_?@QGSX0Q^A(N;>;@@&W[K(B3@DOA=V]2(G\MT-!3:.W'8
M(2['Y^90J@R M78ZT\ L\91"2S&=)J_>&HM<*^OX?O+JF=C)/8+:B\Z[$!W2
M\$7!/.V/8K6U2A5D9W^Q^&;[8[OF0?N=^/3AG7@KR[NA^"#)-<1LY9Q)-=\-
M*9$R SIH*G*".0% +8/B7*%'K7@:%6&I9NU1",.99G&@U0J2RD19%\HB[<(#
MB9UP&C7& 3)6;W7)Z@5JX[U*5;&&FFDRF8S$QQ+^5CX^NN&VG@RY+MNH">A"
M$680]P:6BE74249_5JALK[*_%,M6^'N#>MCI=-?Z3!ILLP0M6UF-IOHF3O2>
MVFP4SY7\"#]28U%[+"?S7)A-3YQ7)SG7.GQ1(<U9DI2-GI"E>WT2%7J:,M)K
M>H'UM7.U$IG>ZPQ:*&$8&W>P1AZ#%1P#J*W@  E< HU45IH:%&,HO:,\D]5;
MJ-["%MAO:AA05R1^-1LE&%!Y3A61(3U(&9FR 0ACA:.2=HA0&+*'PBJ]*$TS
M/X7;4<"X?TS*?9R1Q1HF8-#HLJ;E\.!@ZIR#14(;:PK6X6JD+SHVY'#V@U%@
MBD)184KN#DJ(X3!++%Y4N2;@#.&08C)]7M!H$WA5YZ1UH[_"F'0G[59!8*\L
M>DM0FQG*4VF ?H12<*D4D]$T>3D9)0FU9,Q_C,"?M;0H>*&+ AF$'2@9S)-4
M,7[3BQD91ZEO7&JR1YY']QZK!ID[@_C\66L$Z;PFB*1Y26DD*J&+NGC(NQ!)
MBC]$7 <%AK&<WBUER84G:0"@"$7-4),JRUI2@&I=T(A*HRURC9BB;V-D.BR(
M.=.V UM-,F0$\K&-2OT.L7)# 4NV,6746BF[&]]!%+2'\) :LK:B!#/,-6AD
M\T!F"%D 45W2Z%%9B00.!;ABCKPY1?B&V8K8-Y8:BRS1 $A-;1T_7M= 0Y9C
M( M=C:HIG63"&3M,;C;P&<G"BR:XAX!XC7H_4MQ+.$(:@->(?2Z J418HMY&
MR3<1&V%846[*R&Y9EW^H-(8GU<!UPAB3466@NNA? XDHD!(#%009&97K'$6L
MV*:KZV28) EK;^+8@,<&$2HQDO*N-H8/F]3@06 M@>U2D-6>$0KZ(CX,*6Y_
M1*!JRXOB!/33)@L%%/+/E<B#"4'Z<A+N'BBW@?P)Y9,2CCE!S:CW[*XD=E23
M.5ZG018*8&Y1>=RX Z8;V6(512X 82B:AI"%5GC8_;KBG0VT8K7U\3S#[P'@
M'%O 8&L,_$.U RI(R6FQ/)!Z?=YP:^S@:.:5QS9;0['7)F=@QU-X1F2W#*%D
M[)46U4W=2V6,P8=60H(\9<"V3"!T<=/H,'_-.D6%OJDAWE1+>!RH*QH*04[K
M/-*94U,+1)A0-K"K-&6P11E(MXO!($UUR2C<3AB$DZH9T$3#,0,&6T6K!P -
MI8* PG@4+/%B]V@8N2I.&YC>=YCC!/?@QZX'&,R/\@NY0-<Z$#6>:!LPZV<(
MHVUI#C-I/(_$.HZE7^57ANN.#JVR/<^M51C"U)N+Z]X(9E1&X?0:1YX'O6L5
M+N\(03R7>GTI@R:.3YCU-]=/Z$;E\)&[Y=L.PJS/,2LD-6A*5028PU2B6(?\
M4[:0 BRS2)XT4=O+O%8G2^N2L,!8KKJHE\6;+H#M#TA%,ZXF_= P;_A%EC5A
MC=]AJ&UWXI<ZY[G$;1'8"F8D9-'(5A[*KLDWL-U[JLPN39'"T=XP8-%337DM
MR6==<?'D!K>4IFEGRF/3G/)'7#?4LWL4S")QHZ ['G!()*Y]@*\&..^3 B1T
M$M]CVK>87#$@1EX* V@0!YA#1*E?B*S&;<-C[382GY@YQX(I".NHTXDF$97$
M--<5+/ZKZ$NXLE8,X;HAX:%!B)/[T,95W]0.DZ@MH8_\+33ZD@@:^WL\&57W
M]ANS#1ER)+,_,/D"*3])4^1991BS@;_D-?L'7^J4JJ)1X'HNGX$)[.@(*@P-
M;7@U2?HM07T>AREY.TL8IE![O)O,Y-$UI)Y'/5@0<*FAM$W;]+C^=_'4EELV
M+E^D$)W7'><,#)?W&-]#9<-&6/,^"=XVVQKU%4F#76@P-SHY$Z ],%&,L_T!
MCQ(ZK.@L"3Q_A7+,VP.LD[5^<H^@.XTIZB9OZ]1SKQ,A"PC<54D#-'ML2YKI
MVLM(IZQ2\H[/6)&8(#V">5@/$R3L.JXFB]&B33UO]\.JQ/-0"%W5WN^<YLT[
M-E:\H[),8TFVWX2,>.W!5,_8IF["]O=T>;9G.5H ZA&&%Z/E]9/3U'#E,).G
M\<*\E%D'&J!V6*XY_8D]>V_LT>$R6(]GR6C&BB[0VKY'G/OH$6/Y+!E-VDA&
M.R[EO7=,=H&'IV!6!)2H91B_I;(UO$G#C-I(*@J&D%KG; 4*\YTI#X"OE;VC
M_48LWI9S@"TICF/&S;>JM[0%GB:3)>?HZGITTQ@]#'$(O=-$8_Z$H(#[F#MG
MFO"U8_B.NGI1:<X!(@"AEEL#KN:]2KM<31]+L)NCF+P(#T[#<W)&M&J.4,0'
M,Q(ST3SZRV=&\;SH;-UO3HF&D865W7%/NU<GTZ\;5\X-; YX'F&5\;RBF?3W
M5FQW>G)R6G,1^:,(JJ<EXMC-Y3R7&,#IV)=>;#EPV(NZET*/6KKI]/]:1DLP
M=6;0#AE=*T6\'T^D"Z9=+:>CZ_.C()[@X9L!Y'^I:2Y%YA7+$X]C_COTZVW5
M3X#OOD-N/%?8%_AV;7J)4851L0.V,.E>":VIYX/Q<?<"_9Z/!AKBB7G>/]WP
ME\Y,^0"LSS$IJ?ILX148;P&0?>[-<[?3E7BZ^NW+LTN::+D3RGHQBE1[EX-(
MCNDSV#S9ZS>GCVS\Z=Z^.0Y%&R>CQ?)) VOL#;V/X' =M.Z1[+)+^:O@_/[;
MR&(,Y=A.TYSY%5,:3Y\22"F,?>[QB[%]QDY=$X."294!%#BJT!(PR>:O0?O5
M7L6#*%J"\/1(\6IW!@S<LIN"&3H#V]3P.Z1.02D<J'?\^NS;R9JQL)V $-]+
MM!"Y10CJF.QE%#?0PWT\1BRDO5.^1^=&ESX>C7M?\OB0B[Y7TB$H #9\U&N?
MMI]$5^%+8/=Z^)X:(NS _38033!(!\*&;Y3AQIN*OPNNC?>FX,N=DBAQ>@&_
M;PQ0/-Z0@O9#\>W_ 5!+ P04    " "-:,Q6[K)OXG0$  ">"@  &0   'AL
M+W=O<FMS:&5E=',O<VAE970Q-RYX;6R-5MMRVS80_14,Z_1)E6C)<AQ7THSM
MM%-W)C.>)$T?.GV R*6$&@18 )3D?GW/ A(M-;33%PF7O9P]>R%F6^L>_9HH
MB%VMC9]GZQ":Z]'(%VNJI1_:A@QN*NMJ&;!UJY%O',DR*M5Z-,[SRU$ME<D6
MLWCVX!8SVP:M##TXX=NZEN[IEK3=SK/S['#P4:W6@0]&BUDC5_2)PF_-@\-N
MU%DI54W&*VN$HVJ>W9Q?WUZP?!3XHFCKC]:"(UE:^\B;^W*>Y0R(-!6!+4C\
M;>B.M&9#@/'WWF;6N63%X_7!^L\Q=L2RE)[NK/Y=E6$]SZXR45(E6QT^VNTO
MM(]GRO8*JWW\%=LD.YEDHFA]L/5>&0AJ9=*_W.UY.%*XRE]0&.\5QA%W<A11
MOI=!+F;.;H5C:5CC10PU:@.<,IR43\'A5D$O+.Y-86L2G^6._&P48)'/1\5>
M^S9ICU_0GH@/UH2U%S^9DLI3_1&0='#&!SBWXU<-WC1N*";Y0(SS\>05>Y,N
MO$FT-_EF>.*]\H6VOG4D_KA9^N!0$'_VA9PL7O1;Y":Y]HTL:)ZA"SRY#66+
M[[\[O\Q_? 7O18?WXC7KWTS'J]K]V(Y-BGOT@??DO3(K$=:$OI):_2.72JOP
M)&S%%4W.42D".&/9X =1\L[6C31/HK#HR)*<%]LUX<()%83RHK9@5JM'TD^0
MET88&W@1A&?_C76Q#:T34FOVI(+O\X8&P#TK+P_PJ!R*SX" 3E-HQ YU,MB+
MF1&5A-%5D@FB;2#(0:S(D.OTJC9P.4!++C4)E9@"0D<;!"CU5\:U2E0I<%FV
M[L!B0T[9$DX-2%'%&H?6PS#5"!NS3I2J@A4R!?26%-V@85J,)#@>BALOI&BD
M"^PPK(&=-E*W$>@I^RE[L,(DRHU4.D)OK%<\WH0TI3"TDG%#&R0*/@<<FFY+
MAKN/^1"A9X^T4S[$6/9,] (?B,;9OS!-P44O<PGI'E174$Q;(1UL+67QR,4D
M=S\T6AK#'KD/ ZT4FV?L*%MD.:)R5'#N\/U)&6-5"]H".0Q"ZLK/MU6E"L6R
M_0F-!;7LDL^IM(?*>HZ]IXB&XLLA"\RWW<J80& [F[Z=#O(<@^KLZO*"5Q']
MV7D^R-^]2_LHB(&F=#?1!N)7:5KF=7*>3J+:B=!XP"0T%#]7^@FT(")#5#+M
MJ,T**X?2["MZ-E:0"_@8@UGN%$,=@X@1\\^G9,#25CJ4;*0"E4@Q>?&.)65M
M6Q->:BXHH<'W,K''7QP ]K2-\2F-CL+:$4$E?CVX2__#0B(FT<'RA#*,C!R2
MRF@XF9@7J$\QG@RG;Z+.=#AY<TIA&AX%(*U8_<C6LY'J?^/:(K$XP1-&(="R
M)8XQG#B ,2JDYTJKU2[.N@1Z27S5I9#AIC0]!T4IB^33J"MYMM32<'4?]6(*
MZ>M ^N/H^S"-CMX,-;E5?!FA.#BEZ?G0G7:/KYOTYG@63R^W#]*ME/%"4P75
M?/AVF@F77D-I$VP37R!+&_">B<LU'I#D6 #WE;7AL&$'W9-T\2]02P,$%
M  @ C6C,5DWU2F)M P  V@<  !D   !X;"]W;W)K<VAE971S+W-H965T,3@N
M>&ULA57;;MLX$/V5@5H4,>!8-R=U4]N G7:Q!;9%T'3;AZ(/M#2RB%"D2E)6
M_/<[I&S%V=CNBS0D9P[/7#EME7XP):*%QTI(,PM*:^N;,#19B14S(U6CI)-"
MZ8I96NIU:&J-+/=&E0B3*+H.*\9E,)_ZO3L]GZK&"B[Q3H-IJHKI[1*%:F=!
M'.PWOO)U:=U&.)_6;(WW:/^M[S2MPAXEYQ5*PY4$C<4L6,0WR['3]PK?.;;F
M0 ;GR4JI![?XE,^"R!%"@9EU"(Q^&[Q%(1P0T?B]PPSZ*YWAH;Q'_\O[3KZL
MF,%;)7[PW):S8!) C@5KA/VJVK]QY\^5P\N4,/X+;:>;1@%DC;&JVAD3@XK+
M[L\>=W$X,)B<,DAV!HGGW5WD67Y@ELVG6K6@G3:A.<&[ZJV)')<N*?=6TRDG
M.SO_0GD7RABH4<-]R31.0TNX[C3,=AC+#B,Y@9'"9R5M:>"CS#%_;A\2GYY4
MLB>U3,X"+FH]@C0:0A(EZ1F\M'<R]7CI";R/3$LNUP;N]D["S\7*6$TU\>N8
MOQW<^#B<ZY,;4[,,9P$U@D&]P6#^YE5\';T_0W;<DQV?0_<9X3)3%<*%R\S@
M?&K^#/;/L_3"DAF>@3S,N_$'W$#&1-8(9C&'U19RON$YQ>U)F39MB=#Z6L?\
MDFU04^N";*H5X:@"B'=%S>81#= 4,)9)!S*";V19*$%CP&%:MA((!JVA36U+
M#TS6=6.9[U<"6YV@>D-8&O%9V<$X3*/0%4PO)7#Q21*N:@QQ,$/ QPQK>^!R
M3BTS@+X'7L-%/!R/DX&3KH;19#R 'SM?8>_KWK4G7ZW*'@Y=A?AZF,2Q^T5I
M"A^X:-SH 2P*FD4O+/%WPS=,H'2AT*KR&W;KBH#VG&$MF#1P053?O)HD<?*^
M_W]3E@GSOPN_O,SMY2Z6Y%<TBMX-.B%-!L>5<T>9?'ZI[D@L+%"'<M&W*)#?
M3DB&P.I:JT=.XQ+%%B84Q"CRQ_'U.R^?"-]A$%HD$I0KT;B\^I <*8X]QY?E
M02R,M]@%O%6-H()&XF'Y9;Y/AW$!]GJWA,SDEAZ9FDK1Y;I''1WKZ/!@WE:H
MU_Y5H>Y1C;3=Z.UW^X=KT<WK)_7NU?O,])I3<@469!J-WEX%H+N7I%M85?OI
MO5*6W@(OEO3XHG8*=%XH9?<+=T'_G,__ U!+ P04    " "-:,Q6B@"-Q7@$
M  #2"@  &0   'AL+W=O<FMS:&5E=',O<VAE970Q.2YX;6R55M]OVS80_E<.
M:M&U@&/)LIVZB6,@23NL#\6")-T>ACW0TEDF(I$J2=GQ_OK=D9+B9':*/5BF
MJ.\^?O>#Y,VWVCS8-:*#QZI4]B):.U>?Q;'-UE@).]0U*OJRTJ82CEY-$=O:
MH,B]457&:9*<QI60*EK,_=R-6<QUXTJI\,: ;:I*F-T5EGI[$8VB;N)6%FO'
M$_%B7HL"[]!]KV\,O<4]2RXK5%9J!097%]'EZ.QJPG@/^$/BUNZ-@3U9:OW
M+U_SBRAA05ABYIA!T-\&K[$LF8AD_&@YHWY)-MP?=^R_>M_)EZ6P>*W+/V7N
MUA?1+((<5Z(IW:W>_H:M/U/FRW1I_1.V 3L91Y UUNFJ-28%E53A7SRV<=@S
MF"5'#-+6(/6ZPT)>Y6?AQ&)N]!8,HXF-!]Y5;TWBI.*DW#E#7R79N<6=T]G#
MR17YE<.UKBC75G"XYK$C=L;$6<MT%9C2(TQC^*:56UOXHG+,G]O'I*J7EG;2
MKM)7"2]K,X1Q,H T2<>O\(U[5\>>;WS,U;4PV+IZ(W9460XNC1&J0#_^ZW)I
MG:$R^?N0\X%[<IB;M\Z9K46&%Q'M#8MF@]'BW9O1:7+^BO))KWSR&OO_2M*K
M3(=U'J,'_P&^JHS"0WL';DJAX'Z-'B74[A<+;JO!>ICL837!+%"PP1$V34:?
MX/=*R65#M?&CD6[WDO(]X]Z]F:5I<N[A/.O?1^<?0*B\(QH=EO3"?O3,?N@5
M]]. C[4TY*E47%@C3Z\T*#I Q%:8G';7#I9(?SE"0[5LGE9G@B%\WY\,8@?^
MM0V+9RBHL!R1@R@*@X5P"'H%30U.PVB0) G_P')-6IZ3S@)6=:EW2!,DC@GY
MT&4SPC@C,T>R0[ ;Q?@@79UT=I"39YG3YN<$WE4[A-OCS $2'*'/S7^]]CFF
M>%+!$,#0^;,L=Z W+6Y#W%(54*.1.F<9/-NMO%='=(PZ-'2Z<2A8M9 &-J)L
M?,Q8SY$ :-.I9,$&2\&(;+^&6WD@ G4N5RLT2/5#.79;Q! GNI >Z ;LU^2Y
METOH ,W;5(8$EV@#,3ZBR20M5)/.HQQM,(?PN3$<&L:XM4$\J?CP[$*%?(0"
M'8"R[$_ YR76925IF0<^VGZBK2F19=KD?A'-IA12#G((%=7%"N4S_('\#N'2
MLB<'A%#BM_P0=6WTHZ3K$2GUI\EL,!E/>PD;(4NJ"5^'L&I<0Q;2VD9P_ \N
M>.^+MJ1>P2OWQJ%AD/^TU>$+X&3ICZN#J>[J@/P^4O<TG^E"$67>[92G(\TZ
MLO8W KE.W8_Q[-;[T.<+JG#9'<J4CS -TC-RA['[%R-,XG$2>U@W2N&]%Z$;
M2Y;V VFQ?O%":])J=9G#6TAG])A.X8XZ&(K-  I4I*T,>S6GW2/Y^O*G8AL)
M"Q^G,/HT@WOM"/C3P+V%43+FI:9C.'1MQ7M]1H6F\-V4):Y&N=!R]+-]PW89
M^I0G>.CVO@E32 IJB2LR388?IQ&8T$&%%Z=KW[4LM:,>R _7U'2B80!]7VGM
MNA=>H&]C%_\"4$L#!!0    ( (UHS%:+ER&M]@,  '4)   9    >&PO=V]R
M:W-H965T<R]S:&5E=#(P+GAM;*U666_C-A#^*P-ML;"!U+J<TP=@9[/8;+&
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
MV 8!W%?&^.$A&!@_MI;_ E!+ P04    " "-:,Q6]T+<QJP#  !2"   &0
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
MG9\*L-U@=@:9)@S#QA"/5MB6_):A]0'L+PP+[0V?8'@=TS]02P,$%     @
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
M!XY><=@!N"\UXC^IA&&81J%+0B<E<'HMP9:J,43!] &?,JRMKR/C(YM38?;
M59JK,'@'IW%_.$QZ3CKO1^-A#W[Z[B%\]HB:AD%K:9S'5)L5M2]U0O8 -%:,
MI6LH!!"/^DD<NR5*T]9U:G# HJ".?V6)?QK^R 1*:Z#0JO(']MD5/YTYPUHP
M:>"4J+X_&2=Q\JE;[Y5EPOQW8>?/BZ-G;D!0*LBO:!!][+5"FO0.*^=MM@ZH
M.Q)S"U3U7'1E[S/L MX'5M=:/7$:2BB>84Q!C"+_.QY]]/(;X=L/P@:)!.5*
M-"ZO/B2V1*=?-Y;YD4GF.X[RE0/$PGB+;< WJA$YK)!X6'Z6[])A7("]WB4A
M,_E,H[Q6VN>Z0QT<ZI)P;ZI5J-=^=ALBV$C;#KCNM'L>YNU4?%%OWY8;IM><
MDBNP(--H\.$\ -W.ZW9C5>UGY$I9FKA>+.F)0^T4Z'^AE-UMW 7=HSG["U!+
M P04    " "-:,Q6>$.Y4ND"  !X!@  &0   'AL+W=O<FMS:&5E=',O<VAE
M970R.2YX;6R%55%OVC 0_BNGK-I:B34A <H8($'7:7NHA K;'J8]F.1(K#IV
M9IM"]^MW=D+&)$I?X&S????=^?-EO%/ZT12(%O:ED&82%-96HS T:8$E,]>J
M0DDG&Z5+9FFI\]!4&EGF@TH1QE$T"$O&93 =^[V%GH[5U@HN<:'!;,N2Z><Y
M"K6;!-W@L/' \\*ZC7 ZKEB.2[3?JH6F5=BB9+Q$:;B2H'$S"6;=T;SG_+W#
M=XX[<V2#JV2MU*-;?,TF0>0(H<#4.@1&?T]XBT(X(*+QN\$,VI0N\-@^H'_V
MM5,M:V;P5HD?/+/%)!@&D.&&;85]4+LOV-33=WBI$L;_PJ[V'0P"2+?&JK()
M)@8EE_4_VS=]. H81B\$Q$U ['G7B3S+3\RRZ5BK'6CG36C.\*7Z:"+'I;N4
MI=5TRBG.3I=6I8_OYU17!K>JI+LVS+?K<L76 LW5.+24QCF':0,YKR'C%R 3
MN%?2%@;N9(;9__$AT6LYQ@>.\_@LX*S2UY!$'8BC.#F#E[0U)QXO>:GF@FEL
M:EZP9Y*8A9G63.;H[9^SM;&:]/+K5/$U=N\TMGM#(U.Q%"<!/1*#^@F#Z=LW
MW4'T\0SS7LN\=P[]->8=N-N[&Z13)ND^6<4M$_P/9AV8E6HK[:F"SJ8\7="J
M0-@H02^:RQRL4TKSK"F9 4O'Q@MK[:FFQ\+"FB*]:,$L'5I%)O6;IV[EPX#M
MF,X,[:<JEXX_<.E1G429?'YGR)&B?0/4!FA&:8]NB);VGK;0B%#62D2G1" =
M<=$*R;>(C'@$*^][K%KHA4D4>K>#%<.E)Z&VAB+-%7$Q/GFN%'$U2F1P ?&0
M?OI]6-*<H=YT($=)W(3/QC)ZP=QIRXVB0R<,W/2A^V$(*T6W]7KC+J ;)2Y5
M/X%3F@J/ID&).O<SSQ 6W7\]&-K==JS.ZFGRS[V>R?=,YYR:*G!#H='U33\
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
M:'1^=1& ;AM*.[&J]D6\5)9:@C=+ZL&HG0/MKY2RNXD[H._JV1]02P,$%
M  @ C6C,5CLY=_N7 @  #@@  !D   !X;"]W;W)K<VAE971S+W-H965T,S(N
M>&ULK59=;YLP%/TK%I.F59H" =)6'4%*PZ9M4J6J[;:':@\.W 2KQF:V2=)_
MOVM#:%J1J ]Y 7_<<WS/,;J79"/5DRX!#-E67.BI5QI37_F^SDNHJ![)&@3N
M+*6JJ,&I6OFZ5D +!ZJX'P;!N5]1)KPT<6NW*DUD8S@3<*N(;JJ*JN=KX'(S
M]<;>;N&.K4IC%_PTJ>D*[L'\JF\5SOR>I6 5",VD( J64V\VOLHF-MX%_&:P
MT7MC8I4LI'RRDQ_%U ML0L A-Y:!XFL-<^#<$F$:_SI.KS_2 O?'._9O3CMJ
M65 -<\G_L,*44^_2(P4L:</-G=Q\ATZ/2S"77+LGV;2Q%X%'\D8;675@S*!B
MHGW3;>?#'@!YA@%A!PC? LX/ *(.$+T%Q < <0>(G3.M%.=#1@U-$R4W1-EH
M9+,#9Z9#HWPF[+7?&X6[#'$FO0>JI:"<F6?R*0-#&==GB6^0V@;X>4=SW=*$
M!V@B<B.%*37Y*@HH!O#SX_AQ>(3 1TV]L' G[#H\RCBKU8A$P6<2!F$TE-!Q
M^$\J$#X^",_>#P^/J(GZ:XH<7WSHFB@'31YOH%J ^CMT/T?QMGA<Z9KF,/6P
M.FA0:_#2CQ_&Y\&7(6].29:=B.R5;W'O6^S8H_=\W@^P-0WE9^1QMM!&8<D9
M=#(^I9.G),M.1/;*R4GOY.3H%_A0 M8=]82=")L-@:+)J:W<E)-EHP0SC0+"
M=!M3D,4S0;<55$#TRQT,V=T>>^F.M4UJG0:C2>*O]UT<BHDO7@=E@T%]3"O:
MWZN4%:B5ZSB:Y+(1IJTM_6K?U&:NEK]9GV.S:WO3"TW;*6^H6C&A"8<E4@:C
M"\Q+M=VGG1A9NWJ\D :KNQN6V+!!V0#<7TII=A-[0/\+D/X'4$L#!!0    (
M (UHS%:_S.99"0,  ,D)   9    >&PO=V]R:W-H965T<R]S:&5E=#,S+GAM
M;*U66V_;(!C]*\BKIE;:ZOLE76(IC5>MDRI5O:P/TQZ(_25!M<$#DK3_?F G
M7N(X7B?UQ09\SH%SP,!PS?BS6 !(]%+D5(R,A93EA6F*= $%%N>L!*J^S!@O
ML%15/C=%R0%G%:G(3<>R K/ A!KQL&J[Y?&0+65.*-QR))9%@?GK)>1L/3)L
M8]MP1^8+J1O,>%CB.=R#?"QON:J9C4I&"J"",(HXS$;&V+Y((HVO #\(K,5.
M&6DG4\:>=>4Z&QF6'A#DD$JM@-5K!1/(<RVDAO%[HVDT76KB;GFK?E5Y5UZF
M6,"$Y4\DDXN1$1DH@QE>YO*.K;_!QH^O]5*6B^J)UC76"PV4+H5DQ8:L1E 0
M6K_QRR:''8+2Z28X&X+3)GA'".Z&X+Z5X&T(7I5,;:7*(<$2QT/.UHAKM%+3
MA2K,BJWL$ZJG_5YR]94HGHROZ0JH9)R 0*<)2$QR<88^H\?[!)V>G*$31"AZ
M6+"EP#030U.J/C733#?ZE[6^<T3?13>,RH5 7VD&V3[?5&-M!NQL!WSI] J.
M2WZ.7.L3<BS'[1C/I)_^'5-%MX_2D[?W[O2X<9OXW4K/_4?\KR@A(LV96')
M/\=3(;GZ(WYUY5T+>MV">I>X$"5.862H;4  7X$1?_Q@!]:7KK#>4RQY)[&]
M(+TF2*]/7069JEU/ +JF:&=-=P58"P65D-X55[$]<#VU&%:[R?1V][_)O)/8
M7C)^DXS?F\P5H43M#QF:,];]!]=\?R<0%4=HM0+Q#V)S_-!KH9(.U&!@#QK4
MGH6@L1#T6GA21X?>ATK.4A"='H)##\[ CEH>#E&.[UJMJ4\Z4'9XS$/8> A[
M/=SAM=JW)7""\TX'X4&O=N3Z3LM!!RIP@[:##I07^$<<1(V#J-?! Y,X5]/0
M^W-%!_,?^4%[E4P.48%:2D'+10<J< 9ARX6Y<_@5P.?5)4*@E"VIK,_!IK6Y
MIXRKX]G\"Z\O.3>8SPD5*(>9HEKGH4J0UQ>'NB)961VE4R;5P5P5%^JN!5P#
MU/<98W);T1TTM[?X#U!+ P04    " "-:,Q6^EYK?:D#  " "P  &0   'AL
M+W=O<FMS:&5E=',O<VAE970S-"YX;6RM5MMNXS80_15"710)4$<29<MV:AM(
MG!9=H(M-UWMY*/I 2V.+6(ET2<I._GZ'E*SX(BLIT!=;I&;.G#-##6>RD^J[
MS@ ,>2IRH:=>9LSFUO=UDD'!](W<@, W*ZD*9G"IUK[>*&"I<RIRGP9![!>,
M"V\V<7N/:C:1I<FY@$=%=%D43#W?0RYW4R_T]AN?^#HS=L.?339L#0LP7S:/
M"E=^@Y+R H3F4A %JZEW%][.0VH=G,57#CM]\$RLE*64W^WB?3KU LL(<DB,
MA6#XMX4YY+E%0A[_UJ!>$],Z'C[OT7]WXE',DFF8R_P;3TTV]48>26'%RMQ\
MDKL_H!8TL'B)S+7[);O*=CCT2%)J(XO:&1D47%3_[*E.Q($#'5QPH+4#/76(
M+SA$M4/DA%;,G*P'9MALHN2.*&N-:/;!Y<9YHQHN;!D71N%;CGYF]B=@#C3I
MD;O%G(SZE/Q5,F&X83:[Y+VH#HI-^-4#&,9S?8W&7Q8/Y.K=-7E'N""?,UEJ
M)E(]\0TRLKA^4D>_KZ+3"]$C\D$*DVGRFT@A/?;W44DCA^[EW--.P+N-NB%1
M\ NA 8U:^,S?[DX[Z$1-=B.'%W5G]^^[I38*3^P_;2FJ(/KM$/8SOM4;EL#4
MP^]4@]J"-_OYIS .?FW3]S^!':GM-VK[7>BSCQM0>%;$FN16-TFD-FV"*Y38
MH=@VLYV%-!Y/_.VAD!:CB X;HR."@X;@H)/@(I/*] RHXA6&%<S@,'@P.B%X
M;C.^0"]NZ,7=],IE18N+1!;01BP^"]H+@Q-BW39'S(8-LV$GLZ],<8;D7DG;
M\"PRC<,3=BTV@ZB=W:AA-^ID]UD:EK]";71>T9B>EK3-*+Y0U'%#;MQ);LYT
M1C:,IP1;*6&%+(71ML)YB2W/]D^3 2F0?*D [T=#Y*K6DF/.><X-A];6.CYG
MVX^B$TEM1H-^NZ0P>+DT@DY1[K;OR56O1)I,:T!)<HG7@Z@DP5.2,;$&IUG@
M7?XF0770PV^>CNF)H!:C\>B"GH-+,.S4\\W=]I#VV!9;&/+&4J"8EU;F>L;5
M,S"EKUNI=^-3XEP))45UWX64I.RY+0OS-T*%P1Z+]ENPCA-!7Q)!_ULB4JX3
M>V0)=O;6CE0#C@_J$=P$\=E!O&1W6CO_8)8I0*W=B*>)(U'- <UN,T;>N>'I
M9/_>CI=N1GJ!J6;3#TRMN=!8VA5"!C=#_#Q4->Y5"R,W;F):2H/SEWO,<$0&
M90WP_4I*LU_8 ,W0/?L!4$L#!!0    ( (UHS%9?ZP._HP,  (80   9
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
M\64ULO+\478$S8L=^80*N;\OFK$\LP%3 /E\1JEX[:A-?GT*#/X#4$L#!!0
M   ( (UHS%;1/.Q*L@L  %V&   9    >&PO=V]R:W-H965T<R]S:&5E=#,W
M+GAM;+6=[W/:.![&_Q4-=W/3G=D-_@FDES"38$G7G4VOEUYO7^S<"P<$>&IL
M:INDF=D__B1C$ )'B7L/?1$P6!_)Z*F^TF-)OGK*BZ_E4HB*?%^E67G=6U;5
M^GV_7TZ78A67%_E:9/*;>5ZLXDH>%HM^N2Y$/*L3K=*^YSB#_BI.LM[XJO[L
M4S&^RC=5FF3B4T'*S6H5%\^W(LV?KGMN;_?!?;)85NJ#_OAJ'2_$9U%]67\J
MY%%_3YDE*Y&529Z10LRO>S?N>SZH$]1G_"<13^7!>Z(NY2'/OZJ##[/KGJ-*
M)%(QK10BEB^/8B+25)%D.;XUT-X^3Y7P\/V.SNJ+EQ?S$)=BDJ>_)[-J>=T;
M]<A,S.--6MWG3_\0S06%BC?-T[+^2YZ:<YT>F6[**E\UB64)5DFV?8V_-S_$
M00+?>R&!UR3PCA)X+R7PFP3^6Q,$38+@K0G")D'XU@2#)L'@K0F&38)A75G;
M7[>NFBBNXO%5D3^10ITM:>I-7;]U:EDC2::D^+DJY+>)3%>-(_%0D7<?XZ*(
ME29^(N\B4<5)6OYTU:\D7YW5GS:LR9;EO<!RR5V>5<N2T&PF9BWI(WMZWY*^
M+Z]K?W'>[N)N/2OP+GXF[N7/Q',\GWSY')%W?_U)"3<I/^5)5K5=H1UXLUE<
M$-]51'>X([9=Z"N8=2$QCEFP%@RU8WZ-LUUIK!CV]M)X%@RW8SZ+]07Q1C7&
M;<<8E>CO%>K77/\%[F_RF.1S,BG$+*D(BZ=)FE3/Y(_ZBP^56)7_;2GM[98:
MM%-5"_^^7,=3<=V337@IBD?1&__M+^[ ^7N;+)"P" FC2!A#PC@(9H@FV(LF
ML-'E__SOR6JS(K/D,9F);$;B5;[)*I)D9)Z4TS@ESR(NVF1CY7:5#1(6(6$4
M"6-(&-_"!C5,=:0>Q[Y3_[OJ/[8H(MPK(K0J8M>,3+?-R+QI1GXFE2A6;4*P
MXKH* 0F+PI-?R V/?J)M)2-S94@8!\$,)0SV2AC\F!+6HDCR&9']>]G)GFVF
M8D8>\D+2DVQ1DMFFD*_RVTU1+<FW35Q(Y2B.B*?+PU:%O)OF62FF&]6A(K/X
MN;4O=6LM9%=](6&1_>?SG?J:VAH59"D8$L9!,$-OP[W>AM8?[$NV*:64UGE1
M#[[F0A#9V19MFK""NFH""8NV,-<Y:'2<"\?QA^%1FX/,E2%A' 0S-##::V!D
M;W/R;/&+BC1RF/S0-O"XM:;O6O5(6#0Z#<C!8!2>AIO3$SUW& 0G)[(6HD1>
MGIS(0==A5-GEOLHNK57V>?-0BF\;(7N-]%']_>-.K!Y$T3K8L**ZUAX2%B%A
M% EC2!@'P0REN(XV49RSC%$;+$@W4%H$I5$HC4%I'$4SQ7/@P+G6AN;W6/83
M"Q+7HU0Y5EVIQD;V$EH%XYXTG>%IQW]BS[&S$I T"J4Q*(VC:*82/*T$SZJ$
M#YD<D\2E4#9%DJF@DQ?/I-P\I,E*-BN;;"9UT@Q;XD4AA))*JTRV^82'$;9U
MB#BQEZBS4I T"J4Q*(VC:*92M"?J6MTS0REQ6<J.22I(E9-RF:S_3^GX;W07
M)O8B=I8.U!6%TAB4QE$T4SK:&77MUF@M'57[<;H3A#I%JJ:1U+N9V+YKM2T:
MNNL>C00'PV-Y0,U/*(U":0Q*XRB:*0]MD[IVG_3#J0Q(O%ZGR316;<PJ+A:R
MS:EOHI&UNHM6DC_M]]1NFQP/HY$7'JL%ZI!":11*8U :1]%,M6@KU;6;@8>-
M23/XV0YY]BJ*K(W)X"38#,/66 ,U.*$T"J4Q*(VC:*8\M//IVJW/>_&8IX_*
M-C\9&5O,%#NT\Z@8ZH-":11*8U :1]%,Z6C#U!V=QU*!&JE06@2E42B-06D<
M13/%HZU;U^[=OFZWVP&=90*U;!N:,7IW7,\]==R;,XW!VM#UO%/+O>5,;S08
MGIKS''4MYHPM;:5Z5K=M_,\BD1U,V9VXRXMJ$2\$^9BWWRRS@[I6(90606D4
M2F-0&D?13+EH\]1SSQ(F/*1O.('2(BB-0FD,2N,HFBD>[;=ZK_FM,D:(LGKQ
M?KP]?6>5;&DCTSD)S/8W@N9)H30&I7$4S:Q][:%Z=@_U]4Z"'="Y^J%^J7?J
MTP:#MDE@T&P9E,91-%,!V@KU[%:HC!:BF1G:6OU(7V_BG4YL#$<M%19!LZ50
M&H/2.(IF5K^V.CV[U?GO%V9^VI-UKG=[(3RGGC38-I\N@A:$0FD,2N,HFJD$
M;6-ZK]F8NSMF-E_*#NFL"ZBE":51*(U!:1Q%,Z6B+4UO>)X!!]34A-(B*(U"
M:0Q*XRB:*1YM:GKV::#:#S^:?*XGFM<+*TE]USY6\X5;M03U.*&TJ*&9@YS!
M<9\4:EU":1Q%,R6BK4O/;EWN0E$B2GLP@AJ84%H$I5$HC4%I'$4S5T9JL]0_
MS[Q3'VJ=0FD1E$:A- :E<13-%(^V3GW[O%-0,++GTEE+4">UH9G!:'2\9 6:
M)X/2.(IF:D0[I+[=(=VMH]U%(O(GN9E.E6%2DD),1?)8SPJR!2I[#IWU 9VO
M"J51*(U!:1Q%,W5TL(;_3(OXL:OXL<OXL>OXL0OYL2OYSV'3^MJF]>TV+2I0
M0>U<*"UJ:*\%*JB7"Z5Q%,W4B/9R?;N->J-6SHA9O8KF7I12!?*@:6UN=O/=
M9?2:'"S-9OFF(&R[</M?V_7<]=XS2D^_;M+GW=XJ3JN:H"8QE!9!:11*8U :
M1]%,U6G?V!^<)ZQ!G60H+8+2*)3&H#2.HIGBT4ZR;Y\<>Y=D==]ZGGR7;=5T
M&1<+0:;YHRC4K">U'U?>JAVHD0RE15 :A=(8E,8;FNL=3KV[\-KWJ/&U0>S;
M#6+Z;9.LZU#U6QYGQK#K+0&N52]0LQA*BZ T"J4Q*(VC:*:NM*OL7YXG4$%=
M9B@M@M(HE,:@-(ZBF5NI:9<YL$_)W8GG9,,DL6^MYDD69U/9<6X3D1W?5410
M6M30C'G1K7MI0;-E4!I'T4Q]:",YL!O)GSY.()'*GDUGG4"=9"B-0FD,2N,H
MFBDF[3@'WEDB50"UF:&T"$JC4!J#TCB*9HI'V\R!?4KOQSS[I1#S33:K;TN\
ML(F*'=)9*E!3&4JC4!J#TGAP.H'9W,K&U,#!SJ]VM_@H&OW8$E1['ITE O6*
MH30*I3$HC:-HII*TIQR$YPE%4&L82HN@- JE,2B-HVBF>+0U'-BG%-\+]2"(
M^M;4_B;5-)892@6UB@9J"4-I44,[7)#J#EH7FT#S95 :1]%,06B[-[#;O9WC
MTEM/ZK11I;V0G64&=8^A- JE,2B-HVBF%+7+')QG;X4 :B5#:1&41J$T!J5Q
M%,T4C[:2@U?V5GC)#<Q$NZMSNO/ T&O=Y,>><6=!0.UA*(U!:1Q%,Y^KH.WA
MT&X/_TA@^V&/T%Z6KDT0E!9!:11*8U :1]%,Q6G#.3S/I@\AU&"&TB(HC4)I
M#$KC*)HI'FTPA_8IS2_&KU4SU_EMXS5[+IVU!/6;P]/M?P<O/"$&ZB5#:1Q%
M,W6BO>30[B4?A;4SS,RP%Z"SA* ^-)1&H30&I7$4S929MJO#X#RQ#.I00VD1
ME$:A- :E<13-%,_!,\U^\*%F'6,9]EEGV(>=M3SMS&F/9=C'G6&?=W8.,SK4
M9G1H-Z-OTDH4F0Q,Y%:MD[A7[U08*P_CV/%:KU:E0%UJ*"V"TBB4QJ TCJ*9
M:M).=GB>+3!"J/<,I450&H72&)3&4313/-I[#NTSG%_=<\^>OK-*H"9S0[L\
M"$;.A7-Y\A \:*X,2N,HFEG_VCX.[?;QVT+1=FE$JSR@,Y*AM A*HU :@](X
MBF8^P%5;SH/S['LQ@+K'4%H$I5$HC4%I'$4SQ:/=XX%]NO*K$<B>OK-*H#9Q
M0SN*0,/!<02"YLJ@-(ZB;>N_7RZ%J**XBL=7*U$LQ$2D:4GJ32JN>TH5^T])
M(>9J\_CW-UZO+U/JT\=7ZW@A[NJ'VY0D%7.9U+D8RE%;D2R6^X,J7RND'%97
M5;ZJWRY%/!.%.D%^/\_S:G>@,GC*BZ]U\<;_ U!+ P04    " "-:,Q6._XE
M0)P"  !L!P  &0   'AL+W=O<FMS:&5E=',O<VAE970S."YX;6RM55UOFS 4
M_2L6JZ96V@(!DK8904I"JW52I:I?>YCVX,!-L&IL9IND^_>S#6%)2K-.ZDOP
MM>\Y]YY+.([67#S)'$"AYX(R.79RI<J1Z\HTAP++'B^!Z9,%%P56.A1+5Y8"
M<&9!!75]SQNZ!2;,B2.[=R/BB%>*$@8W LFJ*+#X/07*UV.G[VPV;LDR5V;#
MC:,2+^$.U$-Y(W3DMBP9*8!)PAD2L!@[D_XH&9A\F_!(8"VWUL@HF7/^9(*K
M;.QXIB&@D"K#@/5C!3.@U!#I-GXUG$Y;T@"WUQOV2ZM=:YEC"3-.OY-,Y6/G
MS$$9+'!%U2U??X5&CVTPY53:7[2N<T.=G%92\:(!ZPX*PNHG?F[FL 70/-T
MOP'X^X#P%4#0 (*W L(&$-K)U%+L'!*L<!P)OD;"9&LVL[##M&@MGS#SVN^4
MT*=$XU1\Q5)> +K'SR#1<0(*$RI/T&?T<)>@XZ,3=(0(0_<YKR1FF8Q<I8L:
MJ)LV!:9U ?^5 @&ZYDSE$EVP#+)=O*N;;3OV-QU/_8.$DU+T4.!]0K[G!QW]
MS-X.]SO@R6'X-\PTO-]5?4=-T,X_L'S!/^>/$B)3RF4E /V8S*42^IOXV37P
MFC'L9C0^,9(E3F'L:".0(%;@Q!\_](?>EZYIO2=9\DYD.Y,,VTF&A]CC1TPK
M7'L)U6:&60I=PZM)AI;$>.(J'IP.(G>U/9.7.7W/.S_?S4I>9IT-PS9G1\.@
MU3 XJ.%BL0!KA$CI/X3 JE-"S7&^5=CK^<&^B*XL;Q#LB3C8S_^^,7?+APH0
M2^OG$J6\8JK^P-O=]LJ86*?<VY_V1[/:^?_2U/?0-19+PB2BL-"47N]4"Q"U
MM]>!XJ5UNSE7VCOM,M?7(0B3H,\7G*M-8 JT%VS\!U!+ P04    " "-:,Q6
M.SH^SFX#  !?"@  &0   'AL+W=O<FMS:&5E=',O<VAE970S.2YX;6RMEDMO
MXS80@/\*H09% FPB2O(SM0WDL8ON88M@L^D>BAX8:6P1D4B5I.SLO^^0DN5'
M:&V ]F*+PYGA?.1P.+.-5"\Z!S#DM2R$G@>Y,=5U&.HTAY+I*UF!P)FE5"4S
M.%2K4%<*6.:,RB*,*1V%)>,B6,R<[$$M9K(V!1?PH(BNRY*I'[=0R,T\B(*M
MX"M?Y<8*PL6L8BMX!/-4/2@<A9V7C)<@-)>"*%C.@YOH^BZBUL!I_,EAH_>^
MB45YEO+%#CYG\X#:B*" U%@7#/_6< =%83UA'/^T3H-N36NX_[WU_LG!(\PS
MTW GB^\\,_D\F 0D@R6K"_-5;GZ'%FAH_:6RT.Z7;%I=&I"TUD:6K3%&4'+1
M_+/7=B/V#-"/WR!N#>)C@\$)@Z0U2!QH$YG#NF>&+69*;HBRVNC-?KB]<=9(
MPX4]QD>C<):CG5G\@9G"12I+(.>%U/J"5*#(8\X4"N[!,%Z@[)(\/=Z3\[,+
M<D9"HNVL1C/R)+C1'_8$WW)9:R8R%)X=C&>AP6CMFF':1G;;1!:?B"PA7Z0P
MN28?10;9H7V(E!UJO$6]C7L=WE3JBB3T XEIG'CBN7N_>=P33M+M?.+\)2?\
M?61*<+'2Y*';\+]NGK51F-E_^[:K<3?PN[/7_5I7+(5Y@/=9@UI#L/CUEVA$
M?_.Q_D_.#L@''?F@S[O+.9MK/LC&<N0L;0E:+RZCP0#W>[T?O4=K2">#3NL@
MK&$7UK WK._NRD-&V!H4EK!M6F/QTP9S& \++P+6#)Z2\V;NPH?0K#+<"RX:
MQ5%TA.#3HDGB1QAU"*.?[BPLEU@BB5R2C!>U+9(-R*6M=AG!TFER( 9KOJ[5
M#X(5)GTA)9A<9J36%G++CW7]!1U6BJ?02SQZPT*/:/LT#DC''>FXE_2;-*S0
MO5&-WW4./JV3YS#IHIO\]!S>5E47ZRZ%:IWMQ%Z"9I'Q?IK3*SH](O!J);&?
M8-H13/\#@<LL3*9W,$S?Q>#5.L40T=WC1GLI/HM4 38=F"L$64I,_O92PVM:
MU/BN$"-W]Z2Y.MZGBKY)D\GPB,&C$XVF1PCAWE-=@EJY#D9C<+4PS5/62;LN
MZ<;U!D?R6]L]N19@YZ9IO;XPM>)"DP*6Z))>C3$BU70SS<#(RC4$S])@>^$^
M<^P 05D%G%]*:;8#NT#74R[^!5!+ P04    " "-:,Q6WF%S[6@$   ^%@
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
M+RI)Q<G?[U"R%=NK&(NB+Q8O,X?G',HS&JVT>;0%HH-G*90=!X5SY448VJQ
MR>RI+E'1SD(;R1Q-S3*TI4&6UTE2A'$4#4/)N K24;TV,^E(5TYPA3,#MI*2
MF9<)"KT:![U@LW#+EX7S"V$Z*MD2[] ]E#-#L[!%R;E$9;E68' Q#BY[%],S
M'U\'_,-Q9;?&X)7,M7[TD^M\'$2>$ K,G$=@]'C"*0KA@8C&SS5FT![I$[?'
M&_0_:^VD9<XL3K7XQG-7C(/S ')<L$JX6[WZ"]=Z!AXOT\+6O[!:QT8!9)5U
M6JZ3B8'DJGFRY[4/6PF$TYT0KQ/B_83^&PG).B&IA3;,:EE7S+%T9/0*C(\F
M-#^HO:FS20U7_A;OG*%=3GDNO47'#=*U.)@)IBP<?V'&,._M"1Q?H6-<V!/X
M" ^*.\SASC&'%K[?H)RC^>$W[J[@^.@$CH KN"]T99G*[2ATQ,Z?$69K)I.&
M2?P&DP1NM'*%A<\JQWPW/R15K;1X(VT2'P2\+,TI)-$'B*,XZ> S_?_I\0$Z
M2>MT4N,E;^!=X8)6<IB@HM'&;O(*OKH"#<RT=>;U-G;#[ME<(-SC,VT(G3W"
M][\)#*X=2ONCR^N&2[^;BR\-%[9D&8X#^N];-$\8I._?]8;1IRZC?A/8CFW]
MUK;^(?3TABLN*TE&J8H)R.@=,7Q>^1I@H23?4)9"OR!^\+.,K.NRHSGCO#[#
M%[:G-#J->J/P:5OF02*_*'/0RAP<ELF>?X/,08?,L\&>S(-$?E'FL)4Y/"CS
M2^7+!N@%*922RK@M&)T"!8J\2U"#-M@2U$OBJ'\>[VGJB.L-!W^<OVK?H7O6
MTCT[2'>Z<PWSE\TMF"ZN#=1PBT,_2O9X_C<F2:(]CN%6-9=HEG63LV18I5Q3
M_=K5MH]>UNUC;WU"_;5IAZ\P37.^86;)29' !4'Z=R0 TS2\9N)T6?>,N7;4
M@>IA0=\(:'P [2^T=IN)/Z#]ZDC_!5!+ P04    " "-:,Q6)EA3$N\"   5
M"@  &0   'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6RM5EUOVC 4_2M65DVM
MM#8A"=!V$*G05:LT)-2NZT.U!Y-<B-78SFP'RK^?[4 *- VMQ OQQSW'Y]A<
M^_867#S+%$"A%YHQV7=2I?)+UY5Q"A3+,YX#TS-3+BA6NBMFKLP%X,2":.;Z
MGM=Q*2;,B7IV;"RB'B]41AB,!9(%I5@L!Y#Q1=]I.>N!.S)+E1EPHUZ.9W /
MZB$?"]US*Y:$4&"2<(8$3/O.5>MRV/(,P$;\(;"0&VUDK$PX?S:=VZ3O>$81
M9! K0X'U9PY#R#+#I'7\6Y$ZU9H&N-E>L]]8\]K,!$L8\NR1)"KM.^<.2F"*
MBTS=\<5/6!EJ&[Z89]+^HD49&X8.B@NI.%V!M0)*6/G%+ZN-V !HGGJ OP+X
MNX#W5@A6@, :+9596]=8X:@G^ ()$ZW93,/NC45K-X298[Q70L\2C5/1(Q8"
M,[5$Q]>@,,GD"3I%#_?7Z/CH!!TAPM#OE!<2LT3V7*47-# W7I$/2G+_'?(
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
MD='%1VQDW<Z&UK"J]NVU4A:;U2\K'*>@G0.>KY6R!\-=T _H_ ]02P,$%
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
MAN?C[\O'R<X+=<?9P>^QQ2]02P,$%     @ C6C,5E/9*RFR 0  4QL  !,
M  !;0V]N=&5N=%]4>7!E<UTN>&ULS9G-;L(P$(1?!>6*B+&=TA\!E[;7ED-?
MP$TV)"*)+=M0>/LZX4=J1:,B*G4NL1+OSHR]TG?)]&UGR VV==6X651X;QX8
M<VE!M7*Q-M2$G5S;6OGP:I?,J'2EEL3$>#QAJ6X\-7[D6XUH/GVB7*TK/WC>
MAL^NU,TLLE2Y:/"X+VR]9I$RIBI3Y<,^VS39-Y?1P2$.G5V-*TKCAJ$@8F<=
MVIV?#0Y]KQNRMLQHL%#6OZ@Z5+%MQ9S?5>3B?HDS&76>EREE.EW7H25VQI+*
M7$'DZRK>BP[[G7VX8=H_^=7^G4R?8:A<6&U<F)BER^V.(VF[1R8(D?5E_Q%/
MCD'ZZO-1.^V,LE]ZA^O]T';5S<.Q;KG^CK_.^*1_80X!DD."Y$A <MR Y)B
MY+@%R7$'DN,>) <?HP1!(2I'02I'82I'@2I'H2I'P2I'X2I' 2M'(:M (:M
M(:M (:M (:M (:M (:M (:M (:M (:M (:M$(:M$(:M$(:M$(:M$(:M$(:M$
M(:M$(:M$(:M$(6N"0M8$A:P)"ED3%+(F*&1-_I.L[UJO_OHW3[O&M2J;HS_K
M_J7-/P%02P$"% ,4    " "-:,Q6!T%-8H$   "Q    $
M@ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    ( (UHS%:N=SJ![@
M "L"   1              "  :\   !D;V-0<F]P<R]C;W)E+GAM;%!+ 0(4
M Q0    ( (UHS%:97)PC$ 8  )PG   3              "  <P!  !X;"]T
M:&5M92]T:&5M93$N>&UL4$L! A0#%     @ C6C,5DM;4Z3.!0  Q1X  !@
M             ("!#0@  'AL+W=O<FMS:&5E=',O<VAE970Q+GAM;%!+ 0(4
M Q0    ( (UHS%;:PN#M!PD  ' M   8              " @1$.  !X;"]W
M;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    " "-:,Q6).J%R2,#   R
M#   &               @(%.%P  >&PO=V]R:W-H965T<R]S:&5E=#,N>&UL
M4$L! A0#%     @ C6C,5JY4WDB+!   Y!   !@              ("!IQH
M 'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0    ( (UHS%:,DEL_
MS@(  " (   8              " @6@?  !X;"]W;W)K<VAE971S+W-H965T
M-2YX;6Q02P$"% ,4    " "-:,Q6Q C/ZW<"  #T!0  &
M@(%L(@  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L! A0#%     @ C6C,
M5F[^^O8@!@   !H  !@              ("!&24  'AL+W=O<FMS:&5E=',O
M<VAE970W+GAM;%!+ 0(4 Q0    ( (UHS%9R7F.9'P4  ,(=   8
M      " @6\K  !X;"]W;W)K<VAE971S+W-H965T."YX;6Q02P$"% ,4
M" "-:,Q6,_86]W,"  #F!0  &               @('$,   >&PO=V]R:W-H
M965T<R]S:&5E=#DN>&UL4$L! A0#%     @ C6C,5C2G=T)@!   UPH  !D
M             ("!;3,  'AL+W=O<FMS:&5E=',O<VAE970Q,"YX;6Q02P$"
M% ,4    " "-:,Q6N=WBHA0&  "@#@  &0              @($$.   >&PO
M=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    ( (UHS%9LUWZFU@(
M %0&   9              " @4\^  !X;"]W;W)K<VAE971S+W-H965T,3(N
M>&UL4$L! A0#%     @ C6C,5L-3CE2I!@  S \  !D              ("!
M7$$  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"% ,4    " "-:,Q6
M?'<U>)H%  "O#   &0              @($\2   >&PO=V]R:W-H965T<R]S
M:&5E=#$T+GAM;%!+ 0(4 Q0    ( (UHS%:I"[?-H0<  /<2   9
M      " @0U.  !X;"]W;W)K<VAE971S+W-H965T,34N>&UL4$L! A0#%
M  @ C6C,5M)D@<RM"P  -!X  !D              ("!Y54  'AL+W=O<FMS
M:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " "-:,Q6[K)OXG0$  ">"@
M&0              @(')80  >&PO=V]R:W-H965T<R]S:&5E=#$W+GAM;%!+
M 0(4 Q0    ( (UHS%9-]4IB;0,  -H'   9              " @71F  !X
M;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%     @ C6C,5HH C<5X
M!   T@H  !D              ("!&&H  'AL+W=O<FMS:&5E=',O<VAE970Q
M.2YX;6Q02P$"% ,4    " "-:,Q6BY<AK?8#  !U"0  &0
M@('';@  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+ 0(4 Q0    ( (UH
MS%8CH&M+$P0  '@)   9              " @?1R  !X;"]W;W)K<VAE971S
M+W-H965T,C$N>&UL4$L! A0#%     @ C6C,5O="W,:L P  4@@  !D
M         ("!/G<  'AL+W=O<FMS:&5E=',O<VAE970R,BYX;6Q02P$"% ,4
M    " "-:,Q6<D&BFYX"  "W!0  &0              @($A>P  >&PO=V]R
M:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( (UHS%92KC?52 (  "D%
M   9              " @?9]  !X;"]W;W)K<VAE971S+W-H965T,C0N>&UL
M4$L! A0#%     @ C6C,5D"X^Y?0 @  _@4  !D              ("!=8
M 'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4    " "-:,Q6KF"@
M(!,$  !\"0  &0              @(%\@P  >&PO=V]R:W-H965T<R]S:&5E
M=#(V+GAM;%!+ 0(4 Q0    ( (UHS%:(::)VP0(  .L%   9
M  " @<:'  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL4$L! A0#%     @
MC6C,5GKH=%H^ P  0 <  !D              ("!OHH  'AL+W=O<FMS:&5E
M=',O<VAE970R."YX;6Q02P$"% ,4    " "-:,Q6>$.Y4ND"  !X!@  &0
M            @($SC@  >&PO=V]R:W-H965T<R]S:&5E=#(Y+GAM;%!+ 0(4
M Q0    ( (UHS%8)\RH6Y (  %8&   9              " @5.1  !X;"]W
M;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @ C6C,5OKI& *M @
MX04  !D              ("!;I0  'AL+W=O<FMS:&5E=',O<VAE970S,2YX
M;6Q02P$"% ,4    " "-:,Q6.SEW^Y<"   ."   &0              @(%2
MEP  >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4 Q0    ( (UHS%:_
MS.99"0,  ,D)   9              " @2":  !X;"]W;W)K<VAE971S+W-H
M965T,S,N>&UL4$L! A0#%     @ C6C,5OI>:WVI P  @ L  !D
M     ("!8)T  'AL+W=O<FMS:&5E=',O<VAE970S-"YX;6Q02P$"% ,4
M" "-:,Q67^L#OZ,#  "&$   &0              @(% H0  >&PO=V]R:W-H
M965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( (UHS%8;_6=./ ,  !$.   9
M              " @1JE  !X;"]W;W)K<VAE971S+W-H965T,S8N>&UL4$L!
M A0#%     @ C6C,5M$\[$JR"P  788  !D              ("!C:@  'AL
M+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4    " "-:,Q6._XE0)P"
M  !L!P  &0              @(%VM   >&PO=V]R:W-H965T<R]S:&5E=#,X
M+GAM;%!+ 0(4 Q0    ( (UHS%8[.C[.;@,  %\*   9              "
M@4FW  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L! A0#%     @ C6C,
M5MYA<^UH!   /A8  !D              ("![KH  'AL+W=O<FMS:&5E=',O
M<VAE970T,"YX;6Q02P$"% ,4    " "-:,Q6@G#!#"H#  !^"0  &0
M        @(&-OP  >&PO=V]R:W-H965T<R]S:&5E=#0Q+GAM;%!+ 0(4 Q0
M   ( (UHS%;NUVD%# ,  ($(   9              " @>["  !X;"]W;W)K
M<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ C6C,5B984Q+O @  %0H
M !D              ("!,<8  'AL+W=O<FMS:&5E=',O<VAE970T,RYX;6Q0
M2P$"% ,4    " "-:,Q6,4Z-\^@"  !;#   &0              @(%7R0
M>&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0    ( (UHS%;'Y8[0
M7@(  *P%   9              " @7;,  !X;"]W;W)K<VAE971S+W-H965T
M-#4N>&UL4$L! A0#%     @ C6C,5HR?SW5  P  [A,   T
M ( !"\\  'AL+W-T>6QE<RYX;6Q02P$"% ,4    " "-:,Q6EXJ[',     3
M @  "P              @ %VT@  7W)E;',O+G)E;'-02P$"% ,4    " "-
M:,Q6@L50^^@#  !^'0  #P              @ %?TP  >&PO=V]R:V)O;VLN
M>&UL4$L! A0#%     @ C6C,5K@VQ-RI 0  +AL  !H              ( !
M=-<  'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ C6C,
M5E/9*RFR 0  4QL  !,              ( !5=D  %M#;VYT96YT7U1Y<&5S
;72YX;6Q02P4&     #4 -0!J#@  .-L

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>57
<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>58
<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>59
<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>75</ContextCount>
  <ElementCount>215</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>31</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>5</UnitCount>
  <MyReports>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>0000001 - Document - Cover Page</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/CoverPage</Role>
      <ShortName>Cover Page</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>0000002 - Statement - Unaudited Condensed Consolidated Balance Sheets</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets</Role>
      <ShortName>Unaudited Condensed Consolidated Balance Sheets</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>0000003 - Statement - Unaudited Condensed Consolidated Balance Sheets (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>Unaudited Condensed Consolidated Balance Sheets (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>0000004 - Statement - Unaudited Condensed Consolidated Statements of Income</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome</Role>
      <ShortName>Unaudited Condensed Consolidated Statements of Income</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>0000005 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss</Role>
      <ShortName>Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>0000006 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss) (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLossParentheticals</Role>
      <ShortName>Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss) (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>0000007 - Statement - Unaudited Condensed Consolidated Statements of Cash Flows</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows</Role>
      <ShortName>Unaudited Condensed Consolidated Statements of Cash Flows</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>0000008 - Statement - Unaudited Consolidated Statements of Changes in Stockholders' Equity</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity</Role>
      <ShortName>Unaudited Consolidated Statements of Changes in Stockholders' Equity</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>0000009 - Statement - Unaudited Consolidated Statements of Changes in Stockholders' Equity (Parenthetical)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquityParenthetical</Role>
      <ShortName>Unaudited Consolidated Statements of Changes in Stockholders' Equity (Parenthetical)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>0000010 - Disclosure - Basis of Presentation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/BasisofPresentation</Role>
      <ShortName>Basis of Presentation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>0000011 - Disclosure - Seasonality and Management Use of Estimates</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/SeasonalityandManagementUseofEstimates</Role>
      <ShortName>Seasonality and Management Use of Estimates</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>0000012 - Disclosure - New Accounting Pronouncements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/NewAccountingPronouncements</Role>
      <ShortName>New Accounting Pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>0000013 - Disclosure - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/RevenueRecognition</Role>
      <ShortName>Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>0000014 - Disclosure - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/Inventories</Role>
      <ShortName>Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>0000015 - Disclosure - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/Leases</Role>
      <ShortName>Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>0000016 - Disclosure - Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/Debt</Role>
      <ShortName>Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>0000017 - Disclosure - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/IncomeTaxes</Role>
      <ShortName>Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>0000018 - Disclosure - Net loss per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/NetlossperShare</Role>
      <ShortName>Net loss per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>0000019 - Disclosure - Stock-Based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/StockBasedCompensation</Role>
      <ShortName>Stock-Based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>0000020 - Disclosure - Retirement Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/RetirementPlans</Role>
      <ShortName>Retirement Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>0000021 - Disclosure - Warranty Accrual</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/WarrantyAccrual</Role>
      <ShortName>Warranty Accrual</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>0000022 - Disclosure - Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/Contingencies</Role>
      <ShortName>Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>0000023 - Disclosure - Delivery Costs</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/DeliveryCosts</Role>
      <ShortName>Delivery Costs</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>0000024 - Disclosure - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/SubsequentEvents</Role>
      <ShortName>Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>0000025 - Disclosure - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/InventoriesTables</Role>
      <ShortName>Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.virco.com/role/Inventories</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>0000026 - Disclosure - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/LeasesTables</Role>
      <ShortName>Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.virco.com/role/Leases</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>0000027 - Disclosure - Debt (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/DebtTables</Role>
      <ShortName>Debt (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.virco.com/role/Debt</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>0000028 - Disclosure - Net income (loss) per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/NetincomelossperShareTables</Role>
      <ShortName>Net income (loss) per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>0000029 - Disclosure - Stock-Based Compensation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/StockBasedCompensationTables</Role>
      <ShortName>Stock-Based Compensation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.virco.com/role/StockBasedCompensation</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>0000030 - Disclosure - Retirement Plans (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/RetirementPlansTables</Role>
      <ShortName>Retirement Plans (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.virco.com/role/RetirementPlans</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>0000031 - Disclosure - Warranty Accrual (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/WarrantyAccrualTables</Role>
      <ShortName>Warranty Accrual (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.virco.com/role/WarrantyAccrual</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>0000033 - Disclosure - Seasonality (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/SeasonalityDetails</Role>
      <ShortName>Seasonality (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/SeasonalityandManagementUseofEstimates</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>0000034 - Disclosure - Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/InventoriesDetails</Role>
      <ShortName>Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/InventoriesTables</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>0000035 - Disclosure - Leases - ASC 842 Quantitative Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails</Role>
      <ShortName>Leases - ASC 842 Quantitative Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>0000036 - Disclosure - Leases - ASC 842 Minimum Lease Payments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails</Role>
      <ShortName>Leases - ASC 842 Minimum Lease Payments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>35</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>0000037 - Disclosure - Debt (Long-term Debt) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/DebtLongtermDebtDetails</Role>
      <ShortName>Debt (Long-term Debt) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/DebtTables</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>0000038 - Disclosure - Debt (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/DebtNarrativeDetails</Role>
      <ShortName>Debt (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/DebtTables</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>0000039 - Disclosure - Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/IncomeTaxesDetails</Role>
      <ShortName>Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/IncomeTaxes</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>0000040 - Disclosure - Net income (loss) per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/NetincomelossperShareDetails</Role>
      <ShortName>Net income (loss) per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/NetincomelossperShareTables</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>0000041 - Disclosure - Stock-Based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/StockBasedCompensationDetails</Role>
      <ShortName>Stock-Based Compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/StockBasedCompensationTables</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>0000042 - Disclosure - Retirement Plans (Periodic Pension Cost) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails</Role>
      <ShortName>Retirement Plans (Periodic Pension Cost) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/RetirementPlansTables</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>0000043 - Disclosure - Retirement Plans (Narrative) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/RetirementPlansNarrativeDetails</Role>
      <ShortName>Retirement Plans (Narrative) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/RetirementPlansTables</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>0000044 - Disclosure - Warranty (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/WarrantyDetails</Role>
      <ShortName>Warranty (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/WarrantyAccrualTables</ParentRole>
      <Position>43</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>0000045 - Disclosure - Contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/ContingenciesDetails</Role>
      <ShortName>Contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/Contingencies</ParentRole>
      <Position>44</Position>
    </Report>
    <Report instance="virc-20230430.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>0000046 - Disclosure - Delivery Costs (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.virco.com/role/DeliveryCostsDetails</Role>
      <ShortName>Delivery Costs (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.virco.com/role/DeliveryCosts</ParentRole>
      <Position>45</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-Q" original="virc-20230430.htm">virc-20230430.htm</File>
    <File>virc-20230430.xsd</File>
    <File>virc-20230430_cal.xml</File>
    <File>virc-20230430_def.xml</File>
    <File>virc-20230430_lab.xml</File>
    <File>virc-20230430_pre.xml</File>
    <File>virc-20230430xex311ng.htm</File>
    <File>virc-20230430xex312ng.htm</File>
    <File>virc-20230430xex321ng.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="413">http://fasb.org/us-gaap/2022</BaseTaxonomy>
    <BaseTaxonomy items="29">http://xbrl.sec.gov/dei/2022</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>61
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "virc-20230430.htm": {
   "axisCustom": 1,
   "axisStandard": 15,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2022": 413,
    "http://xbrl.sec.gov/dei/2022": 29
   },
   "contextCount": 75,
   "dts": {
    "calculationLink": {
     "local": [
      "virc-20230430_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "virc-20230430_def.xml"
     ]
    },
    "inline": {
     "local": [
      "virc-20230430.htm"
     ]
    },
    "labelLink": {
     "local": [
      "virc-20230430_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "virc-20230430_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "virc-20230430.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/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/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.sec.gov/country/2022/country-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd"
     ]
    }
   },
   "elementCount": 335,
   "entityCount": 1,
   "hidden": {
    "http://xbrl.sec.gov/dei/2022": 5,
    "total": 5
   },
   "keyCustom": 25,
   "keyStandard": 190,
   "memberCustom": 13,
   "memberStandard": 17,
   "nsprefix": "virc",
   "nsuri": "http://www.virco.com/20230430",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "0000001 - Document - Cover Page",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://www.virco.com/role/CoverPage",
     "shortName": "Cover Page",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000010 - Disclosure - Basis of Presentation",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://www.virco.com/role/BasisofPresentation",
     "shortName": "Basis of Presentation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "virc:SeasonalityTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000011 - Disclosure - Seasonality and Management Use of Estimates",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://www.virco.com/role/SeasonalityandManagementUseofEstimates",
     "shortName": "Seasonality and Management Use of Estimates",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "virc:SeasonalityTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000012 - Disclosure - New Accounting Pronouncements",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://www.virco.com/role/NewAccountingPronouncements",
     "shortName": "New Accounting Pronouncements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000013 - Disclosure - Revenue Recognition",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://www.virco.com/role/RevenueRecognition",
     "shortName": "Revenue Recognition",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000014 - Disclosure - Inventories",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://www.virco.com/role/Inventories",
     "shortName": "Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000015 - Disclosure - Leases",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://www.virco.com/role/Leases",
     "shortName": "Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000016 - Disclosure - Debt",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://www.virco.com/role/Debt",
     "shortName": "Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DebtDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000017 - Disclosure - Income Taxes",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://www.virco.com/role/IncomeTaxes",
     "shortName": "Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000018 - Disclosure - Net loss per Share",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://www.virco.com/role/NetlossperShare",
     "shortName": "Net loss per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000019 - Disclosure - Stock-Based Compensation",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://www.virco.com/role/StockBasedCompensation",
     "shortName": "Stock-Based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000002 - Statement - Unaudited Condensed Consolidated Balance Sheets",
     "menuCat": "Statements",
     "order": "2",
     "role": "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets",
     "shortName": "Unaudited Condensed Consolidated Balance Sheets",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:Cash",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PostemploymentBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000020 - Disclosure - Retirement Plans",
     "menuCat": "Notes",
     "order": "20",
     "role": "http://www.virco.com/role/RetirementPlans",
     "shortName": "Retirement Plans",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PostemploymentBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000021 - Disclosure - Warranty Accrual",
     "menuCat": "Notes",
     "order": "21",
     "role": "http://www.virco.com/role/WarrantyAccrual",
     "shortName": "Warranty Accrual",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LossContingencyDisclosures",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000022 - Disclosure - Contingencies",
     "menuCat": "Notes",
     "order": "22",
     "role": "http://www.virco.com/role/Contingencies",
     "shortName": "Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LossContingencyDisclosures",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "virc:DeliveryCostsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000023 - Disclosure - Delivery Costs",
     "menuCat": "Notes",
     "order": "23",
     "role": "http://www.virco.com/role/DeliveryCosts",
     "shortName": "Delivery Costs",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "virc:DeliveryCostsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000024 - Disclosure - Subsequent Events",
     "menuCat": "Notes",
     "order": "24",
     "role": "http://www.virco.com/role/SubsequentEvents",
     "shortName": "Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000025 - Disclosure - Inventories (Tables)",
     "menuCat": "Tables",
     "order": "25",
     "role": "http://www.virco.com/role/InventoriesTables",
     "shortName": "Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000026 - Disclosure - Leases (Tables)",
     "menuCat": "Tables",
     "order": "26",
     "role": "http://www.virco.com/role/LeasesTables",
     "shortName": "Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LeaseCostTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000027 - Disclosure - Debt (Tables)",
     "menuCat": "Tables",
     "order": "27",
     "role": "http://www.virco.com/role/DebtTables",
     "shortName": "Debt (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000028 - Disclosure - Net income (loss) per Share (Tables)",
     "menuCat": "Tables",
     "order": "28",
     "role": "http://www.virco.com/role/NetincomelossperShareTables",
     "shortName": "Net income (loss) per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000029 - Disclosure - Stock-Based Compensation (Tables)",
     "menuCat": "Tables",
     "order": "29",
     "role": "http://www.virco.com/role/StockBasedCompensationTables",
     "shortName": "Stock-Based Compensation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PreferredStockSharesAuthorized",
       "us-gaap:PreferredStockSharesAuthorized",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000003 - Statement - Unaudited Condensed Consolidated Balance Sheets (Parenthetical)",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical",
     "shortName": "Unaudited Condensed Consolidated Balance Sheets (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PreferredStockSharesAuthorized",
       "us-gaap:PreferredStockSharesAuthorized",
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000030 - Disclosure - Retirement Plans (Tables)",
     "menuCat": "Tables",
     "order": "30",
     "role": "http://www.virco.com/role/RetirementPlansTables",
     "shortName": "Retirement Plans (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000031 - Disclosure - Warranty Accrual (Tables)",
     "menuCat": "Tables",
     "order": "31",
     "role": "http://www.virco.com/role/WarrantyAccrualTables",
     "shortName": "Warranty Accrual (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "iebf10b00d5b540539b5c9836dce200af_D20230201-20230430",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "virc:ExtremeSeasonalityGoods",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000033 - Disclosure - Seasonality (Details)",
     "menuCat": "Details",
     "order": "32",
     "role": "http://www.virco.com/role/SeasonalityDetails",
     "shortName": "Seasonality (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "iebf10b00d5b540539b5c9836dce200af_D20230201-20230430",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "virc:ExtremeSeasonalityGoods",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "virc:IncreaseInInventories",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000034 - Disclosure - Inventories (Details)",
     "menuCat": "Details",
     "order": "33",
     "role": "http://www.virco.com/role/InventoriesDetails",
     "shortName": "Inventories (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "virc:IncreaseInInventories",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000035 - Disclosure - Leases - ASC 842 Quantitative Information (Details)",
     "menuCat": "Details",
     "order": "34",
     "role": "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails",
     "shortName": "Leases - ASC 842 Quantitative Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:LeaseCostTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OperatingLeaseCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000036 - Disclosure - Leases - ASC 842 Minimum Lease Payments (Details)",
     "menuCat": "Details",
     "order": "35",
     "role": "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails",
     "shortName": "Leases - ASC 842 Minimum Lease Payments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000037 - Disclosure - Debt (Long-term Debt) (Details)",
     "menuCat": "Details",
     "order": "36",
     "role": "http://www.virco.com/role/DebtLongtermDebtDetails",
     "shortName": "Debt (Long-term Debt) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfDebtInstrumentsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i817023d33a2c4b06a2faf3fe4bc4a5f3_I20230430",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "ic99f7b405719435fb21df998ae2ec444_I20210928",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "virc:DividendPayableMaximumAmountInFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000038 - Disclosure - Debt (Narrative) (Details)",
     "menuCat": "Details",
     "order": "37",
     "role": "http://www.virco.com/role/DebtNarrativeDetails",
     "shortName": "Debt (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "ic99f7b405719435fb21df998ae2ec444_I20210928",
      "decimals": "-5",
      "first": true,
      "lang": "en-US",
      "name": "virc:DividendPayableMaximumAmountInFiscalYear",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredTaxAssetsValuationAllowance",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000039 - Disclosure - Income Taxes (Details)",
     "menuCat": "Details",
     "order": "38",
     "role": "http://www.virco.com/role/IncomeTaxesDetails",
     "shortName": "Income Taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "id96edf3311854e0493cec4b46a1f41ce_I20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DeferredTaxAssetsValuationAllowance",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000040 - Disclosure - Net income (loss) per Share (Details)",
     "menuCat": "Details",
     "order": "39",
     "role": "http://www.virco.com/role/NetincomelossperShareDetails",
     "shortName": "Net income (loss) per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000004 - Statement - Unaudited Condensed Consolidated Statements of Income",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome",
     "shortName": "Unaudited Condensed Consolidated Statements of Income",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000041 - Disclosure - Stock-Based Compensation (Details)",
     "menuCat": "Details",
     "order": "40",
     "role": "http://www.virco.com/role/StockBasedCompensationDetails",
     "shortName": "Stock-Based Compensation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanServiceCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000042 - Disclosure - Retirement Plans (Periodic Pension Cost) (Details)",
     "menuCat": "Details",
     "order": "41",
     "role": "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails",
     "shortName": "Retirement Plans (Periodic Pension Cost) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "ix:continuation",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i74a01b3d47aa4af9abd0cd15044689d6_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DefinedBenefitPlanServiceCost",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "virc:DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000043 - Disclosure - Retirement Plans (Narrative) (Details)",
     "menuCat": "Details",
     "order": "42",
     "role": "http://www.virco.com/role/RetirementPlansNarrativeDetails",
     "shortName": "Retirement Plans (Narrative) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "ic18bfa8bde2a437db506f22073bd2495_D20230201-20230430",
      "decimals": "2",
      "first": true,
      "lang": "en-US",
      "name": "virc:DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "number",
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "ied655037fda84d3f8b3feb75fdddb53f_I20230131",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000044 - Disclosure - Warranty (Details)",
     "menuCat": "Details",
     "order": "43",
     "role": "http://www.virco.com/role/WarrantyDetails",
     "shortName": "Warranty (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "ied655037fda84d3f8b3feb75fdddb53f_I20230131",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i7c87a2799d93477db744937a9581ada5_I20230430",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "virc:SelfInsuranceRetention",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000045 - Disclosure - Contingencies (Details)",
     "menuCat": "Details",
     "order": "44",
     "role": "http://www.virco.com/role/ContingenciesDetails",
     "shortName": "Contingencies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "ix:continuation",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i7c87a2799d93477db744937a9581ada5_I20230430",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "virc:SelfInsuranceRetention",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "virc:ShippingAndClassroomDeliveryCosts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "0000046 - Disclosure - Delivery Costs (Details)",
     "menuCat": "Details",
     "order": "45",
     "role": "http://www.virco.com/role/DeliveryCostsDetails",
     "shortName": "Delivery Costs (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "span",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "0",
      "first": true,
      "lang": "en-US",
      "name": "virc:ShippingAndClassroomDeliveryCosts",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000005 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss)",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss",
     "shortName": "Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:ComprehensiveIncomeNetOfTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000006 - Statement - Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss) (Parentheticals)",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLossParentheticals",
     "shortName": "Unaudited Condensed Consolidated Statements of Comprehensive Income (Loss) (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000007 - Statement - Unaudited Condensed Consolidated Statements of Cash Flows",
     "menuCat": "Statements",
     "order": "7",
     "role": "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows",
     "shortName": "Unaudited Condensed Consolidated Statements of Cash Flows",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "lang": "en-US",
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i52ba23c1caab43049763eb8c7c05905b_I20220131",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockSharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000008 - Statement - Unaudited Consolidated Statements of Changes in Stockholders' Equity",
     "menuCat": "Statements",
     "order": "8",
     "role": "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity",
     "shortName": "Unaudited Consolidated Statements of Changes in Stockholders' Equity",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i52ba23c1caab43049763eb8c7c05905b_I20220131",
      "decimals": "INF",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommonStockSharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "shares",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "0000009 - Statement - Unaudited Consolidated Statements of Changes in Stockholders' Equity (Parenthetical)",
     "menuCat": "Statements",
     "order": "9",
     "role": "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquityParenthetical",
     "shortName": "Unaudited Consolidated Statements of Changes in Stockholders' Equity (Parenthetical)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "span",
       "div",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "virc-20230430.htm",
      "contextRef": "i355055723bc34239a2757a2eb55dfdca_D20230201-20230430",
      "decimals": "-3",
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "usd",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 31,
   "tag": {
    "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://www.virco.com/role/RetirementPlansNarrativeDetails"
     ],
     "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",
        "terseLabel": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CoverAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cover page.",
        "label": "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",
        "terseLabel": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus",
        "terseLabel": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r525"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "Document Quarterly Report",
        "terseLabel": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r526"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r523"
     ],
     "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",
        "terseLabel": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r523"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company",
        "terseLabel": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r523"
     ],
     "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",
        "terseLabel": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r527"
     ],
     "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",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r523"
     ],
     "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",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r523"
     ],
     "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",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r523"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business",
        "terseLabel": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r523"
     ],
     "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",
        "terseLabel": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r522"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security",
        "terseLabel": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r524"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name",
        "terseLabel": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.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",
        "terseLabel": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://www.virco.com/role/CoverPage"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r230",
      "r232",
      "r233",
      "r234",
      "r358",
      "r464",
      "r477",
      "r490",
      "r491",
      "r503",
      "r515",
      "r521",
      "r552",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]",
        "terseLabel": "Maximum",
        "verboseLabel": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.virco.com/role/BasisofPresentationDetails",
      "http://www.virco.com/role/ContingenciesDetails",
      "http://www.virco.com/role/DebtNarrativeDetails",
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r230",
      "r232",
      "r233",
      "r234",
      "r358",
      "r464",
      "r477",
      "r490",
      "r491",
      "r503",
      "r515",
      "r521",
      "r552",
      "r590",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum [Member]",
        "terseLabel": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r207",
      "r465",
      "r504",
      "r520",
      "r548",
      "r549",
      "r553",
      "r596"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]",
        "terseLabel": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r207",
      "r465",
      "r504",
      "r520",
      "r548",
      "r549",
      "r553",
      "r596"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Domain]",
        "terseLabel": "Product and Service [Domain]"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r230",
      "r232",
      "r233",
      "r234",
      "r314",
      "r358",
      "r386",
      "r387",
      "r388",
      "r463",
      "r464",
      "r477",
      "r490",
      "r491",
      "r503",
      "r515",
      "r521",
      "r545",
      "r552",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]",
        "terseLabel": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.virco.com/role/BasisofPresentationDetails",
      "http://www.virco.com/role/ContingenciesDetails",
      "http://www.virco.com/role/DebtNarrativeDetails",
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r230",
      "r232",
      "r233",
      "r234",
      "r314",
      "r358",
      "r386",
      "r387",
      "r388",
      "r463",
      "r464",
      "r477",
      "r490",
      "r491",
      "r503",
      "r515",
      "r521",
      "r545",
      "r552",
      "r591",
      "r592",
      "r593",
      "r594",
      "r595"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]",
        "terseLabel": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://www.virco.com/role/BasisofPresentationDetails",
      "http://www.virco.com/role/ContingenciesDetails",
      "http://www.virco.com/role/DebtNarrativeDetails",
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r20",
      "r519"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of 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",
        "verboseLabel": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableMember": {
     "auth_ref": [
      "r489"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Due from customers or clients for goods or services that have been delivered or sold.",
        "label": "Accounts Receivable [Member]",
        "verboseLabel": "Accounts receivable [Member]"
       }
      }
     },
     "localname": "AccountsReceivableMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r210",
      "r211"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 4.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, after Allowance for Credit Loss, Current",
        "verboseLabel": "Trade accounts receivables, net"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedIncomeTaxesNoncurrent": {
     "auth_ref": [
      "r9",
      "r108",
      "r120"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "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 domestic and foreign income tax obligations due beyond one year or the operating cycle, whichever is longer. Alternate captions include income taxes payable, noncurrent.",
        "label": "Accrued Income Taxes, Noncurrent",
        "verboseLabel": "Income tax payable"
       }
      }
     },
     "localname": "AccruedIncomeTaxesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r64",
      "r135"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 2.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",
        "terseLabel": "Less accumulated depreciation and amortization"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": {
     "auth_ref": [
      "r33",
      "r35",
      "r36",
      "r139",
      "r473",
      "r482",
      "r485"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 5.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"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeMember": {
     "auth_ref": [
      "r32",
      "r36",
      "r94",
      "r458",
      "r478",
      "r479",
      "r532",
      "r533",
      "r534",
      "r540",
      "r541",
      "r542"
     ],
     "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 Loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdditionalPaidInCapital": {
     "auth_ref": [
      "r12",
      "r519"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.",
        "label": "Additional Paid in Capital",
        "terseLabel": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapital",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r395",
      "r396",
      "r397",
      "r540",
      "r541",
      "r542",
      "r584"
     ],
     "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"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": {
     "auth_ref": [
      "r91",
      "r92",
      "r361"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement.",
        "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition",
        "terseLabel": "Stock compensation expense"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "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 loss to net cash used in operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AmortizationOfFinancingCosts": {
     "auth_ref": [
      "r41",
      "r269",
      "r442",
      "r536"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "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://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r106",
      "r119",
      "r137",
      "r156",
      "r198",
      "r201",
      "r205",
      "r214",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r419",
      "r421",
      "r430",
      "r519",
      "r550",
      "r551",
      "r588"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "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",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets [Abstract]",
        "verboseLabel": "Assets"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r132",
      "r141",
      "r156",
      "r214",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r419",
      "r421",
      "r430",
      "r519",
      "r550",
      "r551",
      "r588"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "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://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Assets, Current [Abstract]",
        "verboseLabel": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389"
     ],
     "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://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "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",
        "verboseLabel": "Buildings and building improvements"
       }
      }
     },
     "localname": "BuildingsAndImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CapitalLeaseObligationsIncurred": {
     "auth_ref": [
      "r56",
      "r57"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in lease obligation from new lease.",
        "label": "Lease Obligation Incurred",
        "terseLabel": "Right-of-use assets obtained in exchange for new lease liabilities"
       }
      }
     },
     "localname": "CapitalLeaseObligationsIncurred",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Cash": {
     "auth_ref": [
      "r487",
      "r488",
      "r519",
      "r528"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash",
        "verboseLabel": "Cash"
       }
      }
     },
     "localname": "Cash",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": {
     "auth_ref": [
      "r49",
      "r55",
      "r58"
     ],
     "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 at end of period",
        "periodStartLabel": "Cash at beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r49",
      "r100"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "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 decrease in cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r29",
      "r113",
      "r125"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "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 (Notes 6, 7 and 13)"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Commitments and Contingencies Disclosure [Abstract]",
        "terseLabel": "Commitments and Contingencies Disclosure [Abstract]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r540",
      "r541",
      "r584"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]",
        "terseLabel": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Common Stock, Number of Shares, Par Value and Other Disclosure [Abstract]",
        "verboseLabel": "Common stock:"
       }
      }
     },
     "localname": "CommonStockNumberOfSharesParValueAndOtherDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r11"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share",
        "verboseLabel": "Common stock, par value (usd per share)"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r11"
     ],
     "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",
        "verboseLabel": "Common stock, shares authorized (shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r11"
     ],
     "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",
        "verboseLabel": "Common stock, shares issued (shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r11",
      "r76"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding",
        "periodEndLabel": "Ending balance (shares)",
        "periodStartLabel": "Beginning balance (shares)",
        "terseLabel": "Common stock, shares outstanding (shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical",
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r11",
      "r519"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 2.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": "Authorized 25,000,000 shares, $0.01 par value; issued and outstanding 16,210,985 shares at 4/30/2023 and 1/31/2023, and 16,102,023 at 4/30/2022"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CompensationAndRetirementDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Retirement Benefits [Abstract]",
        "terseLabel": "Retirement Benefits [Abstract]"
       }
      }
     },
     "localname": "CompensationAndRetirementDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r38",
      "r144",
      "r146",
      "r151",
      "r469",
      "r474"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss": {
       "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": "Net comprehensive loss"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r59",
      "r60",
      "r98",
      "r99",
      "r209",
      "r489"
     ],
     "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]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r59",
      "r60",
      "r98",
      "r99",
      "r209",
      "r486",
      "r489"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]",
        "terseLabel": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r43",
      "r465"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of Goods and Services Sold",
        "verboseLabel": "Costs of goods sold"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "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 Goods Sold [Member]"
       }
      }
     },
     "localname": "CostOfSalesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "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]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "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]"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Debt Disclosure [Abstract]",
        "terseLabel": "Debt Disclosure [Abstract]"
       }
      }
     },
     "localname": "DebtDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtDisclosureTextBlock": {
     "auth_ref": [
      "r75",
      "r155",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r258",
      "r263",
      "r270",
      "r271",
      "r273"
     ],
     "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]",
        "verboseLabel": "Debt"
       }
      }
     },
     "localname": "DebtDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/Debt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DebtInstrumentAxis": {
     "auth_ref": [
      "r5",
      "r6",
      "r7",
      "r107",
      "r109",
      "r118",
      "r159",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r253",
      "r259",
      "r260",
      "r261",
      "r262",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r443",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r537"
     ],
     "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]"
       }
      }
     },
     "localname": "DebtInstrumentAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r102",
      "r104",
      "r247",
      "r443",
      "r499",
      "r500"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "Debt Instrument, Face Amount",
        "terseLabel": "Face amount"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentFeeAmount": {
     "auth_ref": [
      "r26"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the fee that accompanies borrowing money under the debt instrument.",
        "label": "Debt Instrument, Fee Amount",
        "terseLabel": "Non-refundable fee"
       }
      }
     },
     "localname": "DebtInstrumentFeeAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r25",
      "r248"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "Debt Instrument, Interest Rate, Stated Percentage",
        "terseLabel": "Interest rate"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "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://www.virco.com/role/DebtLongtermDebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentNameDomain": {
     "auth_ref": [
      "r27",
      "r159",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r253",
      "r259",
      "r260",
      "r261",
      "r262",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r443",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r537"
     ],
     "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]"
       }
      }
     },
     "localname": "DebtInstrumentNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentTable": {
     "auth_ref": [
      "r27",
      "r77",
      "r78",
      "r79",
      "r80",
      "r101",
      "r102",
      "r104",
      "r117",
      "r159",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r253",
      "r259",
      "r260",
      "r261",
      "r262",
      "r264",
      "r265",
      "r266",
      "r267",
      "r268",
      "r269",
      "r272",
      "r443",
      "r498",
      "r499",
      "r500",
      "r501",
      "r502",
      "r537"
     ],
     "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://www.virco.com/role/DebtLongtermDebtDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DebtInstrumentTerm": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.",
        "label": "Debt Instrument, Term",
        "terseLabel": "Term"
       }
      }
     },
     "localname": "DebtInstrumentTerm",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_DeferredIncomeTaxAssetsNet": {
     "auth_ref": [
      "r399",
      "r400"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 3.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://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxesAndTaxCredits": {
     "auth_ref": [
      "r54"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 14.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 taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxesAndTaxCredits",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsValuationAllowance": {
     "auth_ref": [
      "r405"
     ],
     "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",
        "terseLabel": "Valuation allowance"
       }
      }
     },
     "localname": "DeferredTaxAssetsValuationAllowance",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit": {
     "auth_ref": [
      "r292",
      "r330",
      "r350",
      "r507",
      "r508"
     ],
     "calculation": {
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of prior service cost (credit) recognized in net periodic benefit cost (credit) of defined benefit plan.",
        "label": "Defined Benefit Plan, Amortization of Prior Service Cost (Credit)",
        "terseLabel": "Amortization of prior service cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanAmortizationOfPriorServiceCostCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement": {
     "auth_ref": [
      "r554"
     ],
     "calculation": {
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of (increase) decrease to benefit obligation of defined benefit plan from remeasurement due to settlement. Excludes decrease to benefit obligation for settlement payment.",
        "label": "Defined Benefit Plan, Benefit Obligation, (Increase) Decrease for Remeasurement due to Settlement",
        "terseLabel": "Plan settlement"
       }
      }
     },
     "localname": "DefinedBenefitPlanBenefitObligationIncreaseDecreaseForRemeasurementDueToSettlement",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanContributionsByEmployer": {
     "auth_ref": [
      "r307",
      "r316",
      "r353",
      "r505",
      "r506",
      "r507",
      "r508"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contribution received by defined benefit plan from employer which increases plan assets.",
        "label": "Defined Benefit Plan, Plan Assets, Contributions by Employer",
        "terseLabel": "Contributions by employer"
       }
      }
     },
     "localname": "DefinedBenefitPlanContributionsByEmployer",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets": {
     "auth_ref": [
      "r292",
      "r328",
      "r348",
      "r507",
      "r508"
     ],
     "calculation": {
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit plan.",
        "label": "Defined Benefit Plan, Expected Return (Loss) on Plan Assets",
        "negatedLabel": "Expected return on plan assets"
       }
      }
     },
     "localname": "DefinedBenefitPlanExpectedReturnOnPlanAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanInterestCost": {
     "auth_ref": [
      "r292",
      "r296",
      "r327",
      "r347",
      "r507",
      "r508"
     ],
     "calculation": {
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost recognized for passage of time related to defined benefit plan.",
        "label": "Defined Benefit Plan, Interest Cost",
        "terseLabel": "Interest cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanInterestCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost": {
     "auth_ref": [
      "r325",
      "r345",
      "r507",
      "r508"
     ],
     "calculation": {
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of net periodic benefit cost (credit) for defined benefit plan.",
        "label": "Defined Benefit Plan, Net Periodic Benefit Cost (Credit)",
        "totalLabel": "Benefit cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanNetPeriodicBenefitCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCostAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Defined Benefit Plan, Net Periodic Benefit Cost (Credit) [Abstract]",
        "terseLabel": "Components of Net Cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanNetPeriodicBenefitCostAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlanServiceCost": {
     "auth_ref": [
      "r294",
      "r326",
      "r346",
      "r507",
      "r508"
     ],
     "calculation": {
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost for actuarial present value of benefits attributed to service rendered by employee for defined benefit plan.",
        "label": "Defined Benefit Plan, Service Cost",
        "terseLabel": "Service cost"
       }
      }
     },
     "localname": "DefinedBenefitPlanServiceCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable": {
     "auth_ref": [
      "r84",
      "r85",
      "r86",
      "r87",
      "r88"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosures and provisions pertaining to defined benefit pension plans or other postretirement defined benefit plans. The arrangements are generally based on terms and conditions stipulated by the entity, and which contain a promise by the employer to pay certain amounts or awards at designated future dates, including a period after retirement, upon compliance with stipulated requirements. Excludes disclosures pertaining to defined contribution plans.",
        "label": "Defined Benefit Plans and Other Postretirement Benefit Plans Disclosures [Table]",
        "terseLabel": "Defined Benefit Plans and Other Postretirement Benefit Plans Disclosures [Table]"
       }
      }
     },
     "localname": "DefinedBenefitPlansAndOtherPostretirementBenefitPlansDisclosuresTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails",
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems": {
     "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": "Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]",
        "terseLabel": "Defined Benefit Plans and Other Postretirement Benefit Plans Table Text Block [Line Items]"
       }
      }
     },
     "localname": "DefinedBenefitPlansAndOtherPostretirementBenefitPlansTableTextBlockLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails",
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum percentage of employee gross pay the employee may contribute to a defined contribution plan.",
        "label": "Defined Contribution Plan, Maximum Annual Contributions Per Employee, Percent",
        "terseLabel": "Maximum annual contributions per employee, percent"
       }
      }
     },
     "localname": "DefinedContributionPlanMaximumAnnualContributionsPerEmployeePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r53",
      "r196"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.",
        "label": "Depreciation, Depletion and Amortization",
        "verboseLabel": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r363",
      "r391",
      "r392",
      "r394",
      "r398",
      "r516"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement [Text Block]",
        "terseLabel": "Stock-Based Compensation"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Share-Based Payment Arrangement [Abstract]",
        "terseLabel": "Share-based Payment Arrangement [Abstract]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DomesticPlanMember": {
     "auth_ref": [
      "r555",
      "r556",
      "r557"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location of employer sponsoring plan, designed to provide retirement benefits, determined as principal place of business. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Domestic Plan [Member]",
        "terseLabel": "Domestic Plan [Member]"
       }
      }
     },
     "localname": "DomesticPlanMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EarningsPerShareAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Earnings Per Share [Abstract]",
        "terseLabel": "Earnings Per Share [Abstract]",
        "verboseLabel": "Net loss per common share:"
       }
      }
     },
     "localname": "EarningsPerShareAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r152",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r180",
      "r182",
      "r184",
      "r185",
      "r186",
      "r190",
      "r425",
      "r426",
      "r470",
      "r475",
      "r496"
     ],
     "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 (loss) per share - basic (usd per share)",
        "verboseLabel": "Basic (usd per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NetincomelossperShareDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r152",
      "r169",
      "r170",
      "r171",
      "r172",
      "r173",
      "r182",
      "r184",
      "r185",
      "r186",
      "r190",
      "r425",
      "r426",
      "r470",
      "r475",
      "r496"
     ],
     "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 (loss) per share - diluted (usd per share)",
        "verboseLabel": "Diluted (usd per share)"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NetincomelossperShareDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r187",
      "r188",
      "r189",
      "r191"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]",
        "terseLabel": "Net income (loss) per Share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NetlossperShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateContinuingOperations": {
     "auth_ref": [
      "r402"
     ],
     "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"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateContinuingOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/IncomeTaxesDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r23"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 2.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",
        "verboseLabel": "Accrued compensation and employee benefits"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r393"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount",
        "terseLabel": "Unrecognized compensation expense"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r393"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition",
        "terseLabel": "Unrecognized compensation expense, weighted average period to be recognized"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r76",
      "r129",
      "r147",
      "r148",
      "r149",
      "r160",
      "r161",
      "r162",
      "r166",
      "r174",
      "r176",
      "r192",
      "r215",
      "r276",
      "r395",
      "r396",
      "r397",
      "r407",
      "r408",
      "r424",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r458",
      "r478",
      "r479",
      "r480"
     ],
     "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://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r42",
      "r156",
      "r198",
      "r200",
      "r204",
      "r206",
      "r214",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r430",
      "r497",
      "r550"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 2.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://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r39",
      "r105",
      "r114",
      "r128",
      "r198",
      "r200",
      "r204",
      "r206",
      "r471",
      "r497"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": 1.0
      }
     },
     "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": "Loss before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]",
        "terseLabel": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationAxis": {
     "auth_ref": [
      "r220",
      "r223"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location in the income statement.",
        "label": "Income Statement Location [Axis]",
        "terseLabel": "Income Statement Location [Axis]"
       }
      }
     },
     "localname": "IncomeStatementLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/SeasonalityDetails",
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeStatementLocationDomain": {
     "auth_ref": [
      "r223"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the income statement.",
        "label": "Income Statement Location [Domain]",
        "terseLabel": "Income Statement Location [Domain]"
       }
      }
     },
     "localname": "IncomeStatementLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/SeasonalityDetails",
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_IncomeTaxDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Tax Disclosure [Abstract]",
        "terseLabel": "Income Tax Disclosure [Abstract]"
       }
      }
     },
     "localname": "IncomeTaxDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r157",
      "r403",
      "r404",
      "r406",
      "r412",
      "r414",
      "r416",
      "r417",
      "r418"
     ],
     "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://www.virco.com/role/IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r158",
      "r175",
      "r176",
      "r197",
      "r401",
      "r413",
      "r415",
      "r476"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_NetIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Income Tax Expense (Benefit)",
        "terseLabel": "Income tax benefit"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesReceivable": {
     "auth_ref": [
      "r111",
      "r126",
      "r530"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount due within one year of the balance sheet date (or one operating cycle, if longer) from tax authorities as of the balance sheet date representing refunds of overpayments or recoveries based on agreed-upon resolutions of disputes.",
        "label": "Income Taxes Receivable, Current",
        "verboseLabel": "Income tax receivable"
       }
      }
     },
     "localname": "IncomeTaxesReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 3.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 liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in 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": "Trade accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInIncomeTaxes": {
     "auth_ref": [
      "r535"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 12.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 taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes, and in deferred and other tax liabilities and assets.",
        "label": "Increase (Decrease) in Income Taxes",
        "verboseLabel": "Income taxes"
       }
      }
     },
     "localname": "IncreaseDecreaseInIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "Increase (Decrease) in Inventories",
        "negatedLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (Decrease) in Operating Capital [Abstract]",
        "verboseLabel": "Changes in operating assets and liabilities:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingCapitalAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherReceivables": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in receivables classified as other.",
        "label": "Increase (Decrease) in Other Receivables",
        "negatedLabel": "Other receivables"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherReceivables",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "Increase (Decrease) in Prepaid Expense and Other Assets",
        "negatedLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]",
        "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]"
       }
      }
     },
     "localname": "IncreaseDecreaseInStockholdersEquityRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r103",
      "r116",
      "r150",
      "r195",
      "r441"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "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",
        "verboseLabel": "Interest expense"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoriesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property held for sale in the ordinary course of business, or in process of, or to be consumed in, production for sale.",
        "label": "Inventories [Member]",
        "terseLabel": "Inventories [Member]"
       }
      }
     },
     "localname": "InventoriesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_InventoryDisclosureAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Inventory Disclosure [Abstract]",
        "terseLabel": "Inventory Disclosure [Abstract]"
       }
      }
     },
     "localname": "InventoryDisclosureAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r219"
     ],
     "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]",
        "verboseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/Inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r62",
      "r493"
     ],
     "calculation": {
      "http://www.virco.com/role/InventoriesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.",
        "label": "Inventory, Finished Goods, Net of Reserves",
        "terseLabel": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/InventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r140",
      "r492",
      "r519"
     ],
     "calculation": {
      "http://www.virco.com/role/InventoriesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "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",
        "terseLabel": "Inventories",
        "totalLabel": "Total inventories"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/InventoriesDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r62",
      "r495"
     ],
     "calculation": {
      "http://www.virco.com/role/InventoriesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.",
        "label": "Inventory, Raw Materials, Net of Reserves",
        "terseLabel": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterialsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/InventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "auth_ref": [
      "r62",
      "r494"
     ],
     "calculation": {
      "http://www.virco.com/role/InventoriesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.",
        "label": "Inventory, Work in Process, Net of Reserves",
        "terseLabel": "Work in process"
       }
      }
     },
     "localname": "InventoryWorkInProcessNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/InventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Land": {
     "auth_ref": [
      "r529"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depletion of real estate held for productive use, excluding land held for sale.",
        "label": "Land",
        "verboseLabel": "Land"
       }
      }
     },
     "localname": "Land",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LandImprovements": {
     "auth_ref": [],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation and depletion of additions or improvements to real estate held for productive use. Examples include, but are not limited to, walkways, driveways, fences, and parking lots.",
        "label": "Land Improvements",
        "verboseLabel": "Land improvements"
       }
      }
     },
     "localname": "LandImprovements",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCost": {
     "auth_ref": [
      "r454",
      "r518"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lease cost recognized by lessee for lease contract.",
        "label": "Lease, Cost",
        "totalLabel": "Total lease cost"
       }
      }
     },
     "localname": "LeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseCostTableTextBlock": {
     "auth_ref": [
      "r586"
     ],
     "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]",
        "terseLabel": "Quantitative Information of Leases"
       }
      }
     },
     "localname": "LeaseCostTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LeaseholdImprovementsGross": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of additions or improvements to assets held under a lease arrangement.",
        "label": "Leasehold Improvements, Gross",
        "terseLabel": "Leasehold improvements"
       }
      }
     },
     "localname": "LeaseholdImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeasesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Leases [Abstract]",
        "terseLabel": "Leases [Abstract]"
       }
      }
     },
     "localname": "LeasesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r587"
     ],
     "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]",
        "terseLabel": "Schedule of Minimum Future Lease Payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r455"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1": {
       "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, to be Paid",
        "totalLabel": "Remaining balance of lease payments"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r455"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1": {
       "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 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": "2025"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r455"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1": {
       "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 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": "2028"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r455"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1": {
       "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 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": "2027"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r455"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1": {
       "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 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": "2026"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": {
     "auth_ref": [
      "r587"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1": {
       "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 having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year.",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year",
        "terseLabel": "Remaining of 2024"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r455"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails": {
       "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 payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "terseLabel": "Difference between undiscounted cash flows and discounted cash flows"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r456"
     ],
     "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]",
        "terseLabel": "Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities [Abstract]",
        "verboseLabel": "Liabilities"
       }
      }
     },
     "localname": "LiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r16",
      "r110",
      "r123",
      "r519",
      "r538",
      "r544",
      "r585"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "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 stockholders\u2019 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r24",
      "r133",
      "r156",
      "r214",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r420",
      "r421",
      "r422",
      "r430",
      "r519",
      "r550",
      "r588",
      "r589"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "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://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Current [Abstract]",
        "verboseLabel": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesNoncurrent": {
     "auth_ref": [
      "r2",
      "r3",
      "r4",
      "r7",
      "r8",
      "r156",
      "r214",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r420",
      "r421",
      "r422",
      "r430",
      "r550",
      "r588",
      "r589"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation due after one year or beyond the normal operating cycle, if longer.",
        "label": "Liabilities, Noncurrent",
        "totalLabel": "Total non-current liabilities"
       }
      }
     },
     "localname": "LiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesNoncurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Liabilities, Noncurrent [Abstract]",
        "verboseLabel": "Non-current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesNoncurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "auth_ref": [
      "r21",
      "r537"
     ],
     "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://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum amount of borrowing capacity under a line of credit that is available as of the balance sheet date for a specific purpose other than for financing goods acquired for inventory or imminent delivery to a customer.",
        "label": "Line of Credit Facility, Capacity Available for Specific Purpose Other than for Trade Purchases",
        "terseLabel": "Line of credit facility, equipment financing"
       }
      }
     },
     "localname": "LineOfCreditFacilityCapacityAvailableForSpecificPurposeOtherThanForTradePurchases",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet": {
     "auth_ref": [
      "r537"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) of the credit facility.",
        "label": "Line of Credit Facility, Increase (Decrease), Net",
        "terseLabel": "Line of credit facility, net"
       }
      }
     },
     "localname": "LineOfCreditFacilityIncreaseDecreaseForPeriodNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "auth_ref": [
      "r21",
      "r537"
     ],
     "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://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LineOfCreditFacilityLineItems": {
     "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": "Line of Credit Facility [Line Items]",
        "terseLabel": "Line of Credit Facility [Line Items]"
       }
      }
     },
     "localname": "LineOfCreditFacilityLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r21"
     ],
     "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",
        "terseLabel": "Line of credit facility, maximum borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r21"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "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",
        "terseLabel": "Remaining borrowing capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityTable": {
     "auth_ref": [
      "r21",
      "r537"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to 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.",
        "label": "Line of Credit Facility [Table]",
        "terseLabel": "Line of Credit Facility [Table]"
       }
      }
     },
     "localname": "LineOfCreditFacilityTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The fee, expressed as a percentage of the line of credit facility, for available but unused credit capacity under the credit facility.",
        "label": "Line of Credit Facility, Unused Capacity, Commitment Fee Percentage",
        "terseLabel": "Unused portion fee rate"
       }
      }
     },
     "localname": "LineOfCreditFacilityUnusedCapacityCommitmentFeePercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r7",
      "r109",
      "r121",
      "r260",
      "r274",
      "r499",
      "r500"
     ],
     "calculation": {
      "http://www.virco.com/role/DebtLongtermDebtDetails": {
       "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",
        "terseLabel": "Long-term debt",
        "totalLabel": "Long-term debt"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtLongtermDebtDetails",
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r22"
     ],
     "calculation": {
      "http://www.virco.com/role/DebtLongtermDebtDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      },
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 3.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",
        "terseLabel": "Less current portion",
        "verboseLabel": "Current portion of long-term debt"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtLongtermDebtDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r138"
     ],
     "calculation": {
      "http://www.virco.com/role/DebtLongtermDebtDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LongTermDebt",
       "weight": 1.0
      },
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "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": "Non-current portion",
        "verboseLabel": "Long-term debt, less current portion"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtLongtermDebtDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "auth_ref": [
      "r27"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-term debt.",
        "label": "Long-Term Debt, Type [Axis]",
        "terseLabel": "Long-term Debt, Type [Axis]"
       }
      }
     },
     "localname": "LongtermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtLongtermDebtDetails",
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r27",
      "r74"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. 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": "Long-Term Debt, Type [Domain]",
        "terseLabel": "Long-term Debt, Type [Domain]"
       }
      }
     },
     "localname": "LongtermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtLongtermDebtDetails",
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LossContingenciesLineItems": {
     "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": "Loss Contingencies [Line Items]",
        "terseLabel": "Loss Contingencies [Line Items]"
       }
      }
     },
     "localname": "LossContingenciesLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LossContingenciesTable": {
     "auth_ref": [
      "r66",
      "r67",
      "r228",
      "r230",
      "r232",
      "r546",
      "r547"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discloses the specific components (such as the nature, name, and date) of the loss contingency and gives an estimate of the possible loss or range of loss, or states that a reasonable estimate cannot be made. Excludes environmental contingencies, warranties and unconditional purchase obligations.",
        "label": "Loss Contingencies [Table]",
        "terseLabel": "Loss Contingencies [Table]"
       }
      }
     },
     "localname": "LossContingenciesTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LossContingencyDisclosures": {
     "auth_ref": [
      "r228",
      "r229",
      "r231",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for loss and gain contingencies. Describes any existing condition, situation, or set of circumstances involving uncertainty as of the balance sheet date (or prior to issuance of the financial statements) as to a probable or reasonably possible loss incurred by an entity that will ultimately be resolved when one or more future events occur or fail to occur, and typically discloses the amount of loss recorded or a range of possible loss, or an assertion that no reasonable estimate can be made.",
        "label": "Contingencies Disclosure [Text Block]",
        "terseLabel": "Contingencies"
       }
      }
     },
     "localname": "LossContingencyDisclosures",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/Contingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "auth_ref": [
      "r63"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "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",
        "verboseLabel": "Machinery and equipment"
       }
      }
     },
     "localname": "MachineryAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_MortgagesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A loan to finance the purchase of real estate where the lender has a lien on the property as collateral for the loan.",
        "label": "Mortgages [Member]",
        "terseLabel": "Original Mortgage Note"
       }
      }
     },
     "localname": "MortgagesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.",
        "label": "Movement in Standard and Extended Product Warranty Accrual, Increase (Decrease) [Roll Forward]",
        "verboseLabel": "Warranty claim activity"
       }
      }
     },
     "localname": "MovementInStandardAndExtendedProductWarrantyIncreaseDecreaseRollForward",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r154"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 3.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 by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]",
        "verboseLabel": "Financing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r154"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "Net Cash Provided by (Used in) Investing Activities",
        "totalLabel": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]",
        "verboseLabel": "Investing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r49",
      "r51",
      "r54"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "Net Cash Provided by (Used in) Operating Activities",
        "totalLabel": "Net cash used in operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]",
        "verboseLabel": "Operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r40",
      "r54",
      "r115",
      "r127",
      "r131",
      "r143",
      "r145",
      "r149",
      "r156",
      "r165",
      "r169",
      "r170",
      "r171",
      "r172",
      "r175",
      "r176",
      "r183",
      "r198",
      "r200",
      "r204",
      "r206",
      "r214",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r426",
      "r430",
      "r497",
      "r550"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      },
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "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 loss",
        "totalLabel": "Net loss",
        "verboseLabel": "Net income (loss)"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NetincomelossperShareDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome",
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent": {
     "auth_ref": [
      "r292"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for net periodic benefit cost components, excluding service cost component, of defined benefit plan. Amount includes, but is not limited to, interest cost, expected (return) loss on plan asset, amortization of prior service cost (credit), amortization of (gain) loss, amortization of transition (asset) obligation, settlement (gain) loss, curtailment (gain) loss and certain termination benefits.",
        "label": "Net Periodic Defined Benefits Expense (Reversal of Expense), Excluding Service Cost Component",
        "terseLabel": "Pension expense"
       }
      }
     },
     "localname": "NetPeriodicDefinedBenefitsExpenseReversalOfExpenseExcludingServiceCostComponent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Accounting Standards Update and Change in Accounting Principle [Abstract]",
        "terseLabel": "New Accounting Pronouncements and Changes in Accounting Principles [Abstract]"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r130",
      "r163",
      "r164",
      "r167",
      "r168",
      "r177",
      "r178",
      "r179",
      "r212",
      "r213",
      "r216",
      "r217",
      "r409",
      "r410",
      "r411",
      "r423",
      "r427",
      "r428",
      "r429",
      "r431",
      "r432",
      "r433",
      "r444",
      "r445",
      "r457",
      "r459",
      "r466",
      "r467",
      "r468",
      "r481",
      "r482",
      "r483",
      "r484",
      "r485"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.",
        "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]",
        "verboseLabel": "New Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NewAccountingPronouncements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r198",
      "r200",
      "r204",
      "r206",
      "r497"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 4.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)",
        "totalLabel": "Operating loss"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r448",
      "r518"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating Lease, Cost",
        "terseLabel": "Operating lease cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r447"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability",
        "totalLabel": "Total lease liabilities"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r447"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0
      },
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current",
        "terseLabel": "Short-term lease liabilities",
        "verboseLabel": "Current portion operating lease liability"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r447"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingLeaseLiability",
       "weight": 1.0
      },
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 6.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "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": "Long-term lease liabilities",
        "verboseLabel": "Operating lease liability, less current portion"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r446"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 5.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": "Operating lease right-of-use assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r453",
      "r518"
     ],
     "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",
        "terseLabel": "Weighted-average discount rate"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r452",
      "r518"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term",
        "terseLabel": "Weighted-average remaining lease term (years)"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]",
        "terseLabel": "Organization, Consolidation and Presentation of Financial Statements [Abstract]"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": {
     "auth_ref": [
      "r0",
      "r95"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.",
        "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]",
        "verboseLabel": "Basis of Presentation"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/BasisofPresentation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r23"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "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",
        "terseLabel": "Other accrued liabilities"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesNoncurrent": {
     "auth_ref": [
      "r28"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other Accrued Liabilities, Noncurrent",
        "verboseLabel": "Other long-term liabilities"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r136"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other Assets, Noncurrent",
        "terseLabel": "Other assets, net"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]",
        "terseLabel": "Other comprehensive income:"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax": {
     "auth_ref": [
      "r31",
      "r33"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan.",
        "label": "Other Comprehensive (Income) Loss, Defined Benefit Plan, after Reclassification Adjustment, after Tax",
        "negatedLabel": "Pension adjustments, net of tax effect"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLoss",
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax": {
     "auth_ref": [
      "r31",
      "r34",
      "r93"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after reclassification adjustment, of tax (expense) benefit for (increase) decrease in accumulated other comprehensive income of defined benefit plan.",
        "label": "Other Comprehensive (Income) Loss, Defined Benefit Plan, after Reclassification Adjustment, Tax",
        "terseLabel": "Pension adjustments, tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquityParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax": {
     "auth_ref": [
      "r33",
      "r37",
      "r142",
      "r333"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after tax, of reclassification adjustment from accumulated other comprehensive income (loss) for gain (loss) of defined benefit plan.",
        "label": "Other Comprehensive Income (Loss), Defined Benefit Plan, Gain (Loss), Reclassification Adjustment from AOCI, after Tax",
        "terseLabel": "Amortization of net actuarial loss for pension plans"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansForNetGainLossNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax": {
     "auth_ref": [
      "r34",
      "r93"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax (expense) benefit for reclassification adjustment from accumulated other comprehensive (income) loss of defined benefit plan.",
        "label": "Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, Tax",
        "terseLabel": "Pension adjustment, tax expense"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofComprehensiveIncomeLossParentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherIncomeAndExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other Income and Expenses [Abstract]",
        "terseLabel": "Other Income and Expenses [Abstract]"
       }
      }
     },
     "localname": "OtherIncomeAndExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherReceivablesNetCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance, of receivables classified as other, due within one year or the operating cycle, if longer.",
        "label": "Other Receivables, Net, Current",
        "verboseLabel": "Other receivables"
       }
      }
     },
     "localname": "OtherReceivablesNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRent": {
     "auth_ref": [
      "r50"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash payments to lessor's for use of assets under operating leases.",
        "label": "Payments for Rent",
        "terseLabel": "Cash paid for amounts included in the measurement of lease liabilities"
       }
      }
     },
     "localname": "PaymentsForRent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfFinancingCosts": {
     "auth_ref": [
      "r48"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for loan and debt issuance costs.",
        "label": "Payments of Financing Costs",
        "negatedLabel": "Payment on deferred financing costs"
       }
      }
     },
     "localname": "PaymentsOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r45"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "Payments to Acquire Property, Plant, and Equipment",
        "negatedLabel": "Capital expenditures"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionPlansDefinedBenefitMember": {
     "auth_ref": [
      "r82",
      "r291",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r359",
      "r507",
      "r508",
      "r512",
      "r513",
      "r514"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan designed to provide participant with pension benefits. Includes, but is not limited to, defined benefit and defined contribution plans. Excludes other postretirement benefits.",
        "label": "Pension Plan [Member]",
        "terseLabel": "Pension Plan [Member]"
       }
      }
     },
     "localname": "PensionPlansDefinedBenefitMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails",
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583"
     ],
     "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://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [
      "r558",
      "r559",
      "r560",
      "r561",
      "r562",
      "r563",
      "r564",
      "r565",
      "r566",
      "r567",
      "r568",
      "r569",
      "r570",
      "r571",
      "r572",
      "r573",
      "r574",
      "r575",
      "r576",
      "r577",
      "r578",
      "r579",
      "r580",
      "r581",
      "r582",
      "r583"
     ],
     "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://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PostemploymentBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r289",
      "r290"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for postemployment benefits, which may include supplemental unemployment benefits, obligations recognized for all types of benefits provided to former or inactive employees, their beneficiaries, and covered dependents after employment but before retirement. Disclosure may also include discussion that an obligation for postemployment benefits is not accrued in accordance with regulation only because the amount cannot be reasonably estimated.",
        "label": "Postemployment Benefits Disclosure [Text Block]",
        "terseLabel": "Retirement Plans"
       }
      }
     },
     "localname": "PostemploymentBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Preferred Stock, Number of Shares, Par Value and Other Disclosure [Abstract]",
        "verboseLabel": "Preferred stock:"
       }
      }
     },
     "localname": "PreferredStockNumberOfSharesParValueAndOtherDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PreferredStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r10",
      "r275"
     ],
     "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",
        "verboseLabel": "Preferred stock, par value (usd per share)"
       }
      }
     },
     "localname": "PreferredStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r10"
     ],
     "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",
        "verboseLabel": "Preferred stock, shares authorized (shares)"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r10",
      "r275"
     ],
     "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 (shares)"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r10"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.",
        "label": "Preferred Stock, Shares Outstanding",
        "terseLabel": "Preferred stock, shares outstanding (shares)"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r10",
      "r519"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 1.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",
        "verboseLabel": "Authorized 3,000,000 shares, $0.01 par value; none issued or outstanding"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r531"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits 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://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfLongTermDebt": {
     "auth_ref": [
      "r46"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 1.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",
        "verboseLabel": "Borrowing from long-term debt"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantiesDisclosuresAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product Warranties Disclosures [Abstract]",
        "terseLabel": "Product Warranties Disclosures [Abstract]"
       }
      }
     },
     "localname": "ProductWarrantiesDisclosuresAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ProductWarrantyAccrual": {
     "auth_ref": [
      "r70",
      "r71",
      "r112"
     ],
     "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.",
        "label": "Standard and Extended Product Warranty Accrual",
        "periodEndLabel": "Ending balance",
        "periodStartLabel": "Beginning balance"
       }
      }
     },
     "localname": "ProductWarrantyAccrual",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualWarrantiesIssued": {
     "auth_ref": [
      "r68"
     ],
     "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",
        "verboseLabel": "Provision"
       }
      }
     },
     "localname": "ProductWarrantyAccrualWarrantiesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyDisclosureTextBlock": {
     "auth_ref": [
      "r73"
     ],
     "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": "Warranty Accrual"
       }
      }
     },
     "localname": "ProductWarrantyDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/WarrantyAccrual"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProductWarrantyExpense": {
     "auth_ref": [
      "r52",
      "r69"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The expense charged against earnings for the period pertaining to standard and extended warranties on the entity's goods and services granted to customers.",
        "label": "Product Warranty Expense",
        "negatedLabel": "Costs incurred"
       }
      }
     },
     "localname": "ProductWarrantyExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Property, Plant and Equipment [Abstract]",
        "verboseLabel": "Property, plant and equipment:"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r63",
      "r134"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "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": "Total property, plant and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r65",
      "r124",
      "r472",
      "r519"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property, Plant and Equipment, Net",
        "totalLabel": "Net property, plant and equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r153",
      "r218"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Accounts Receivable, Credit Loss Expense (Reversal)",
        "verboseLabel": "Provision for doubtful accounts"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "auth_ref": [
      "r47"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.",
        "label": "Repayments of Long-Term Debt",
        "negatedLabel": "Repayment of long-term debt"
       }
      }
     },
     "localname": "RepaymentsOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RestructuringCostAndReserveLineItems": {
     "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": "Restructuring Cost and Reserve [Line Items]",
        "terseLabel": "Restructuring Cost and Reserve [Line Items]"
       }
      }
     },
     "localname": "RestructuringCostAndReserveLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/SeasonalityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r13",
      "r81",
      "r122",
      "r481",
      "r485",
      "r519"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 4.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)",
        "verboseLabel": "Accumulated deficit"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r129",
      "r160",
      "r161",
      "r162",
      "r166",
      "r174",
      "r176",
      "r215",
      "r395",
      "r396",
      "r397",
      "r407",
      "r408",
      "r424",
      "r478",
      "r480"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]",
        "terseLabel": "Accumulated Deficit"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanSponsorLocationAxis": {
     "auth_ref": [
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r555",
      "r556",
      "r557"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location of employer sponsoring plan designed to provide retirement benefits. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Retirement Plan Sponsor Location [Axis]",
        "terseLabel": "Retirement Plan Sponsor Location [Axis]"
       }
      }
     },
     "localname": "RetirementPlanSponsorLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanSponsorLocationDomain": {
     "auth_ref": [
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r336",
      "r337",
      "r338",
      "r339",
      "r340",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r555",
      "r556",
      "r557"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location of employer sponsoring plan designed to provide retirement benefits. Includes, but is not limited to, defined benefit and defined contribution plans.",
        "label": "Retirement Plan Sponsor Location [Domain]",
        "terseLabel": "Retirement Plan Sponsor Location [Domain]"
       }
      }
     },
     "localname": "RetirementPlanSponsorLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetirementPlanTypeAxis": {
     "auth_ref": [
      "r82",
      "r83",
      "r291",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r359",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of retirement benefit plan. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.",
        "label": "Retirement Plan Type [Axis]",
        "terseLabel": "Retirement Plan Type [Axis]"
       }
      }
     },
     "localname": "RetirementPlanTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails",
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_RetirementPlanTypeDomain": {
     "auth_ref": [
      "r82",
      "r83",
      "r291",
      "r293",
      "r294",
      "r295",
      "r296",
      "r297",
      "r298",
      "r299",
      "r300",
      "r301",
      "r302",
      "r303",
      "r304",
      "r305",
      "r306",
      "r307",
      "r308",
      "r309",
      "r310",
      "r311",
      "r312",
      "r313",
      "r314",
      "r315",
      "r316",
      "r317",
      "r318",
      "r319",
      "r320",
      "r321",
      "r322",
      "r323",
      "r324",
      "r325",
      "r326",
      "r327",
      "r328",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333",
      "r334",
      "r335",
      "r337",
      "r338",
      "r339",
      "r340",
      "r341",
      "r345",
      "r346",
      "r347",
      "r348",
      "r349",
      "r350",
      "r351",
      "r352",
      "r353",
      "r354",
      "r355",
      "r356",
      "r357",
      "r359",
      "r507",
      "r508",
      "r509",
      "r510",
      "r511",
      "r512",
      "r513",
      "r514"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Type of plan designed to provide participants with retirement benefits. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.",
        "label": "Retirement Plan Type [Domain]",
        "terseLabel": "Retirement Plan Type [Domain]"
       }
      }
     },
     "localname": "RetirementPlanTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails",
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Revenue from Contract with Customer [Abstract]",
        "terseLabel": "Revenue from Contract with Customer [Abstract]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r193",
      "r194",
      "r199",
      "r202",
      "r203",
      "r207",
      "r208",
      "r209",
      "r285",
      "r286",
      "r465"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 1.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",
        "verboseLabel": "Net sales"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r277",
      "r278",
      "r279",
      "r280",
      "r281",
      "r282",
      "r283",
      "r284",
      "r287",
      "r288"
     ],
     "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://www.virco.com/role/RevenueRecognition"
     ],
     "xbrltype": "textBlockItemType"
    },
    "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://www.virco.com/role/DebtLongtermDebtDetails",
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SalesMember": {
     "auth_ref": [
      "r96"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing revenue from sale of goods and services rendered in the normal course of business.",
        "label": "Sales [Member]",
        "verboseLabel": "Sales [Member]"
       }
      }
     },
     "localname": "SalesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/SeasonalityDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfDebtInstrumentsTextBlock": {
     "auth_ref": [
      "r27",
      "r77",
      "r78",
      "r79",
      "r80",
      "r101",
      "r102",
      "r104",
      "r117",
      "r499",
      "r501",
      "r539"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of long-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 entity, if longer.",
        "label": "Schedule of Long-Term Debt Instruments [Table Text Block]",
        "terseLabel": "Outstanding balances of long-term debt"
       }
      }
     },
     "localname": "ScheduleOfDebtInstrumentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTextBlock": {
     "auth_ref": [
      "r84",
      "r85",
      "r86",
      "r87",
      "r88"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of one or more of the entity's defined benefit pension plans or one or more other defined benefit postretirement plans, separately for pension plans and other postretirement benefit plans including the entity's schedule of fair value of plan assets for defined benefit or other postretirement plans.",
        "label": "Schedule of Defined Benefit Plans Disclosures [Table Text Block]",
        "terseLabel": "Schedule of Defined Benefit Plans Disclosures"
       }
      }
     },
     "localname": "ScheduleOfDefinedBenefitPlansDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r543"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]",
        "terseLabel": "Schedule of Earnings Per Share, Basic and Diluted"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NetincomelossperShareTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": {
     "auth_ref": [
      "r89"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.",
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]",
        "terseLabel": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount"
       }
      }
     },
     "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r1",
      "r17",
      "r18",
      "r19"
     ],
     "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": "Schedule of Inventory"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/InventoriesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "auth_ref": [
      "r72"
     ],
     "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": "Schedule of Product Warranty Liability"
       }
      }
     },
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/WarrantyAccrualTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": {
     "auth_ref": [
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Table presenting the description of the restructuring costs, such as the expected cost; the costs incurred during the period; the cumulative costs incurred as of the balance sheet date; the income statement caption within which the restructuring charges recognized for the period are included; and the amount of and periodic changes to an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost by type of restructuring.",
        "label": "Schedule of Restructuring and Related Costs [Table]",
        "terseLabel": "Schedule of Restructuring and Related Costs [Table]"
       }
      }
     },
     "localname": "ScheduleOfRestructuringAndRelatedCostsTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/SeasonalityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": {
     "auth_ref": [
      "r360",
      "r362",
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389"
     ],
     "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://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SelfInsuranceReserveNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount of accrued known and estimated losses incurred as of the balance sheet date for which no insurance coverage exists, and for which a claim has been made or is probable of being asserted, typically arising from workmen's compensation-type of incidents and personal injury to nonemployees from accidents on the entity's property that are expected to be paid after one year (or the normal operating cycle, if longer).",
        "label": "Self Insurance Reserve, Noncurrent",
        "terseLabel": "Accrued self-insurance retention"
       }
      }
     },
     "localname": "SelfInsuranceReserveNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r44"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.",
        "label": "Selling, General and Administrative Expense",
        "verboseLabel": "Selling, general and administrative expenses"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpensesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing selling, general and administrative expense.",
        "label": "Selling, General and Administrative Expenses [Member]",
        "terseLabel": "Selling, General and Administrative Expenses [Member]"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpensesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r52"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Noncash Expense",
        "verboseLabel": "Stock-based compensation"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": {
     "auth_ref": [
      "r380"
     ],
     "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",
        "terseLabel": "Forfeited in period (shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": {
     "auth_ref": [
      "r378"
     ],
     "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",
        "verboseLabel": "Granted in the period (shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": {
     "auth_ref": [
      "r379"
     ],
     "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",
        "terseLabel": "Vested in period (shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "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://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r517"
     ],
     "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": "Awards authorized (shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r90"
     ],
     "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": "Awards available for future issuance (shares)"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r364",
      "r365",
      "r366",
      "r367",
      "r368",
      "r369",
      "r370",
      "r371",
      "r372",
      "r373",
      "r374",
      "r375",
      "r376",
      "r377",
      "r378",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r386",
      "r387",
      "r388",
      "r389"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]",
        "terseLabel": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1": {
     "auth_ref": [
      "r390"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost expensed and capitalized for award under share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount",
        "terseLabel": "Stock-based compensation expense"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardCompensationCost1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShortTermLeaseCost": {
     "auth_ref": [
      "r449",
      "r518"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of short-term lease cost, excluding expense for lease with term of one month or less.",
        "label": "Short-Term Lease, Cost",
        "terseLabel": "Short-term lease cost"
       }
      }
     },
     "localname": "ShortTermLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r30",
      "r76",
      "r129",
      "r147",
      "r148",
      "r149",
      "r160",
      "r161",
      "r162",
      "r166",
      "r174",
      "r176",
      "r192",
      "r215",
      "r276",
      "r395",
      "r396",
      "r397",
      "r407",
      "r408",
      "r424",
      "r434",
      "r435",
      "r436",
      "r437",
      "r438",
      "r439",
      "r458",
      "r478",
      "r479",
      "r480"
     ],
     "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://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "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]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/BasisofPresentationDetails",
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]",
        "terseLabel": "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]",
        "terseLabel": "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]",
        "terseLabel": "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]",
        "terseLabel": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r160",
      "r161",
      "r162",
      "r192",
      "r465"
     ],
     "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]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/BasisofPresentationDetails",
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r11",
      "r14",
      "r15",
      "r61",
      "r519",
      "r538",
      "r544",
      "r585"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 1.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 stockholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets",
      "http://www.virco.com/role/UnauditedConsolidatedStatementsofChangesinStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' Equity Attributable to Parent [Abstract]",
        "verboseLabel": "Stockholders' equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubleaseIncome": {
     "auth_ref": [
      "r451",
      "r518"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of sublease income excluding finance and operating lease expense.",
        "label": "Sublease Income",
        "negatedTerseLabel": "Sublease income"
       }
      }
     },
     "localname": "SubleaseIncome",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SubsequentEventMember": {
     "auth_ref": [
      "r440",
      "r461"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued.",
        "label": "Subsequent Event [Member]",
        "terseLabel": "Subsequent Event [Member]"
       }
      }
     },
     "localname": "SubsequentEventMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventTypeAxis": {
     "auth_ref": [
      "r440",
      "r461"
     ],
     "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]",
        "terseLabel": "Subsequent Event Type [Axis]"
       }
      }
     },
     "localname": "SubsequentEventTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventTypeDomain": {
     "auth_ref": [
      "r440",
      "r461"
     ],
     "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]",
        "terseLabel": "Subsequent Event Type [Domain]"
       }
      }
     },
     "localname": "SubsequentEventTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SubsequentEventsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Subsequent Events [Abstract]",
        "terseLabel": "Subsequent Events [Abstract]"
       }
      }
     },
     "localname": "SubsequentEventsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r460",
      "r462"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Subsequent Events [Text Block]",
        "terseLabel": "Subsequent Events"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TradingActivityByTypeAxis": {
     "auth_ref": [
      "r97"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of trading activity.",
        "label": "Trading Activity [Axis]",
        "terseLabel": "Trading Activity [Axis]"
       }
      }
     },
     "localname": "TradingActivityByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TradingActivityByTypeDomain": {
     "auth_ref": [
      "r97"
     ],
     "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]",
        "terseLabel": "Trading Activity, by Type [Domain]"
       }
      }
     },
     "localname": "TradingActivityByTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_UnrealizedGainLossOnInvestments": {
     "auth_ref": [
      "r53"
     ],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      },
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of unrealized gain (loss) on investment.",
        "label": "Unrealized Gain (Loss) on Investments",
        "negatedLabel": "Unrealized gain (loss) on investment in trust account",
        "negatedTerseLabel": "Non-cash unrealized gain on investment"
       }
      }
     },
     "localname": "UnrealizedGainLossOnInvestments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_VariableLeaseCost": {
     "auth_ref": [
      "r450",
      "r518"
     ],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_LeaseCost",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases.",
        "label": "Variable Lease, Cost",
        "terseLabel": "Variable lease cost"
       }
      }
     },
     "localname": "VariableLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842QuantitativeInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "auth_ref": [
      "r543"
     ],
     "calculation": {
      "http://www.virco.com/role/NetincomelossperShareDetails": {
       "order": 2.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 of Shares Outstanding, Diluted, Adjustment",
        "terseLabel": "Net effect of dilutive share-based on the treasury stock method using average market price (shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NetincomelossperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r181",
      "r186"
     ],
     "calculation": {
      "http://www.virco.com/role/NetincomelossperShareDetails": {
       "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": "Totals (shares)",
        "verboseLabel": "Diluted (shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NetincomelossperShareDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]",
        "verboseLabel": "Weighted average shares of common stock outstanding:"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r180",
      "r186"
     ],
     "calculation": {
      "http://www.virco.com/role/NetincomelossperShareDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "terseLabel": "Weighted average shares outstanding - basic (shares)",
        "verboseLabel": "Basic (shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://www.virco.com/role/NetincomelossperShareDetails",
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofIncome"
     ],
     "xbrltype": "sharesItemType"
    },
    "virc_AlternateBaseRateLoansMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Alternate base rate loans.",
        "label": "Alternate Base Rate Loans [Member]",
        "terseLabel": "Alternate Base Rate Loans [Member]"
       }
      }
     },
     "localname": "AlternateBaseRateLoansMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_AmendedAndRestatedCreditAgreementMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amended and Restated Credit Agreement",
        "label": "Amended and Restated Credit Agreement [Member]",
        "terseLabel": "Amended and Restated Credit Agreement"
       }
      }
     },
     "localname": "AmendedAndRestatedCreditAgreementMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_AutomobileLiabilityLossMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Automobile Liability Loss [Member]",
        "label": "Automobile Liability Loss [Member]",
        "terseLabel": "Automobile Liability Loss [Member]"
       }
      }
     },
     "localname": "AutomobileLiabilityLossMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_CovenantPeriod1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Covenant Period 1",
        "label": "Covenant Period 1 [Member]",
        "terseLabel": "Consecutive Four Fiscal Quarters Ending July 31, 2020"
       }
      }
     },
     "localname": "CovenantPeriod1Member",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_CreditAgreementAmendmentFee": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Credit Agreement, Amendment Fee",
        "label": "Credit Agreement, Amendment Fee",
        "terseLabel": "Waiver and amendment fee"
       }
      }
     },
     "localname": "CreditAgreementAmendmentFee",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_DebtInstrumentCovenantMinimumFixedChargeCoverageRatio": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt instrument, covenant, maintained fixed charge coverage ratio",
        "label": "Debt Instrument, Covenant, Minimum Fixed Charge Coverage Ratio",
        "terseLabel": "Minimum fixed charge coverage ratio"
       }
      }
     },
     "localname": "DebtInstrumentCovenantMinimumFixedChargeCoverageRatio",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/BasisofPresentationDetails",
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "pureItemType"
    },
    "virc_DebtInstrumentCovenantPeriodAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument Covenant Period",
        "label": "Debt Instrument Covenant Period [Axis]",
        "terseLabel": "Debt Instrument Covenant Period [Axis]"
       }
      }
     },
     "localname": "DebtInstrumentCovenantPeriodAxis",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "virc_DebtInstrumentCovenantPeriodDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Debt Instrument Covenant Period",
        "label": "Debt Instrument Covenant Period [Domain]",
        "terseLabel": "Debt Instrument Covenant Period [Domain]"
       }
      }
     },
     "localname": "DebtInstrumentCovenantPeriodDomain",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_DefinedBenefitPlanRecognizedNetActuarialGainLoss": {
     "auth_ref": [],
     "calculation": {
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Benefit Plan, Recognized Net Actuarial Gain (Loss)",
        "label": "Defined Benefit Plan, Recognized Net Actuarial Gain (Loss)",
        "negatedLabel": "Recognized net actuarial loss"
       }
      }
     },
     "localname": "DefinedBenefitPlanRecognizedNetActuarialGainLoss",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansPeriodicPensionCostDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Contribution Plan, Minimum Annual Contributions Per Employee, Percent",
        "label": "Defined Contribution Plan, Minimum Annual Contributions Per Employee, Percent",
        "terseLabel": "Minimum annual contributions per employee, percent"
       }
      }
     },
     "localname": "DefinedContributionPlanMinimumAnnualContributionsPerEmployeePercent",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "virc_DefinedContributionPlanNumberOfCommonSharesHeld": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Defined Contribution Plan, Number of Common Shares Held",
        "label": "Defined Contribution Plan, Number of Common Shares Held",
        "terseLabel": "Number of common shares held"
       }
      }
     },
     "localname": "DefinedContributionPlanNumberOfCommonSharesHeld",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/RetirementPlansNarrativeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "virc_DeliveryCostsTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Delivery Costs [Text Block]",
        "label": "Delivery Costs [Text Block]",
        "terseLabel": "Delivery Costs"
       }
      }
     },
     "localname": "DeliveryCostsTextBlock",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DeliveryCosts"
     ],
     "xbrltype": "textBlockItemType"
    },
    "virc_DividendPayableMaximumAmountInFiscalYear": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Dividend Payable, Maximum Amount In Fiscal Year",
        "label": "Dividend Payable, Maximum Amount In Fiscal Year",
        "terseLabel": "Maximum dividend amount in fiscal year"
       }
      }
     },
     "localname": "DividendPayableMaximumAmountInFiscalYear",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_EquipmentLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equipment Loan [Member]",
        "label": "Equipment Loan [Member]",
        "terseLabel": "Equipment Loan [Member]"
       }
      }
     },
     "localname": "EquipmentLoanMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_ExtremeSeasonalityGoods": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Extreme seasonality goods.",
        "label": "Extreme Seasonality Goods",
        "terseLabel": "The market for educational furniture is marked by extreme seasonality"
       }
      }
     },
     "localname": "ExtremeSeasonalityGoods",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/SeasonalityDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "virc_GeneralLiabilityLossMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "General Liability Loss",
        "label": "General Liability Loss [Member]",
        "terseLabel": "General Liability Loss"
       }
      }
     },
     "localname": "GeneralLiabilityLossMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_IncreaseDecreaseApplicableMarginBasisPoints": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase (Decrease) Applicable Margin Basis Points",
        "label": "Increase (Decrease) Applicable Margin Basis Points",
        "terseLabel": "Increase (decrease) applicable margin basis points"
       }
      }
     },
     "localname": "IncreaseDecreaseApplicableMarginBasisPoints",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "integerItemType"
    },
    "virc_IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase (Decrease) In Assemble To Ship Inventory Sublimit Under Credit Agreement",
        "label": "Increase (Decrease) In Assemble To Ship Inventory Sublimit Under Credit Agreement",
        "terseLabel": "Increase in assemble to ship inventory sublimit under credit agreement"
       }
      }
     },
     "localname": "IncreaseDecreaseInAssembleToShipInventorySublimitUnderCreditAgreement",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_IncreaseDecreaseInInventorySublimitUnderCreditAgreement": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase (Decrease) In Inventory Sublimit Under Credit Agreement",
        "label": "Increase (Decrease) In Inventory Sublimit Under Credit Agreement",
        "terseLabel": "Increase in inventory sublimit under credit agreement"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventorySublimitUnderCreditAgreement",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_IncreaseInInventories": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Increase In Inventories",
        "label": "Increase In Inventories",
        "terseLabel": "Increase In Inventories"
       }
      }
     },
     "localname": "IncreaseInInventories",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/InventoriesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_IncrementalCommonSharesExcludedToDilutiveEffect": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incremental Common Shares Excluded to Dilutive Effect",
        "label": "Incremental Common Shares Excluded to Dilutive Effect",
        "terseLabel": "Incremental common shares excluded to dilutive effect"
       }
      }
     },
     "localname": "IncrementalCommonSharesExcludedToDilutiveEffect",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/NetincomelossperShareDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "virc_IncrementalCreditLineIncreaseDecrease": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incremental Credit Line Increase (Decrease)",
        "label": "Incremental Credit Line Increase (Decrease)",
        "terseLabel": "Incremental Credit Line Increase (Decrease)"
       }
      }
     },
     "localname": "IncrementalCreditLineIncreaseDecrease",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_IncrementalCreditLineIncreaseDecreasePercentage": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Incremental Credit Line Increase (Decrease), Percentage",
        "label": "Incremental Credit Line Increase (Decrease), Percentage",
        "terseLabel": "Incremental credit line increase (decrease)"
       }
      }
     },
     "localname": "IncrementalCreditLineIncreaseDecreasePercentage",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "pureItemType"
    },
    "virc_InventoryMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Inventory.",
        "label": "Inventory [Member]",
        "verboseLabel": "Inventory [Member]"
       }
      }
     },
     "localname": "InventoryMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour": {
     "auth_ref": [],
     "calculation": {
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails_1": {
       "order": 6.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Lessee, Operating Lease, Liability, Payments Due After Year Four",
        "label": "Lessee, Operating Lease, Liability, Payments Due After Year Four",
        "terseLabel": "Thereafter"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFour",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/LeasesASC842MinimumLeasePaymentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_LineOfCreditFacilityBorrowingBaseLimitation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line of credit facility borrowing base limitation.",
        "label": "Line of Credit Facility Borrowing Base Limitation",
        "terseLabel": "Revolving credit facility borrowing base limitation"
       }
      }
     },
     "localname": "LineOfCreditFacilityBorrowingBaseLimitation",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "virc_LineOfCreditFacilityBorrowingCapacityTerm": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line Of Credit Facility, Borrowing Capacity, Term",
        "label": "Line Of Credit Facility, Borrowing Capacity, Term",
        "terseLabel": "Line of credit facility, term"
       }
      }
     },
     "localname": "LineOfCreditFacilityBorrowingCapacityTerm",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line of Credit Facility, Period for Reduced Borrowings during Fourth Quarter of Each Fiscal Year",
        "label": "Line of Credit Facility, Period for Reduced Borrowings during Fourth Quarter of Each Fiscal Year",
        "terseLabel": "Line of credit facility, period for reduced borrowings during fourth quarter of each fiscal year (consecutive days)"
       }
      }
     },
     "localname": "LineofCreditFacilityPeriodforReducedBorrowingsduringFourthQuarterofEachFiscalYear",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "virc_LossLiabilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Loss Liability [Member]",
        "label": "Loss Liability [Member]",
        "terseLabel": "Loss Liability [Member]"
       }
      }
     },
     "localname": "LossLiabilityMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_NoncashRentExpense": {
     "auth_ref": [],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Non-cash Rent Expense",
        "label": "Non-cash Rent Expense",
        "negatedTerseLabel": "Non-cash lease benefits"
       }
      }
     },
     "localname": "NoncashRentExpense",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedStatementsofCashFlows"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_OtherDebtMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Other Debt [Member]",
        "label": "Other Debt [Member]",
        "terseLabel": "Other Debt [Member]"
       }
      }
     },
     "localname": "OtherDebtMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtLongtermDebtDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_PNCMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "P.N.C [Member]",
        "label": "P.N.C [Member]",
        "terseLabel": "PNC [Member]"
       }
      }
     },
     "localname": "PNCMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DebtNarrativeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesNoncurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Pension and Other Postretirement Defined Benefit Plans, Including Life Insurance, Liabilities, Noncurrent",
        "label": "Pension and Other Postretirement Defined Benefit Plans, Including Life Insurance, Liabilities, Noncurrent",
        "verboseLabel": "Accrued pension expenses"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementDefinedBenefitPlansIncludingLifeInsuranceLiabilitiesNoncurrent",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/UnauditedCondensedConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_ProductLiabilityMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product Liability",
        "label": "Product Liability [Member]",
        "terseLabel": "Product Liability [Member]"
       }
      }
     },
     "localname": "ProductLiabilityMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_ProductWarranty": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Product warranty.",
        "label": "Product Warranty",
        "terseLabel": "Product warranty period"
       }
      }
     },
     "localname": "ProductWarranty",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "virc_ScheduleOfWarrantyTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule of Warranty [Table]",
        "label": "Schedule of Warranty [Table]",
        "terseLabel": "Schedule of Warranty [Table]"
       }
      }
     },
     "localname": "ScheduleOfWarrantyTable",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "virc_SeasonalityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Seasonality.",
        "label": "Seasonality [Abstract]",
        "terseLabel": "Seasonality [Abstract]"
       }
      }
     },
     "localname": "SeasonalityAbstract",
     "nsuri": "http://www.virco.com/20230430",
     "xbrltype": "stringItemType"
    },
    "virc_SeasonalityTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Seasonality.",
        "label": "Seasonality [Text Block]",
        "verboseLabel": "Seasonality and Management Use of Estimates"
       }
      }
     },
     "localname": "SeasonalityTextBlock",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/SeasonalityandManagementUseofEstimates"
     ],
     "xbrltype": "textBlockItemType"
    },
    "virc_SeasonalityTextualAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Seasonality.",
        "label": "Seasonality (Textual) [Abstract]",
        "verboseLabel": "Seasonality (Textual) [Abstract]"
       }
      }
     },
     "localname": "SeasonalityTextualAbstract",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/SeasonalityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "virc_SelfInsuranceRetention": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Self Insurance Retention",
        "label": "Self Insurance Retention",
        "terseLabel": "Self insurance retention"
       }
      }
     },
     "localname": "SelfInsuranceRetention",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_ShippingAndClassroomDeliveryCosts": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Shipping And Classroom Delivery Costs",
        "label": "Shipping And Classroom Delivery Costs",
        "terseLabel": "Shipping and classroom delivery costs"
       }
      }
     },
     "localname": "ShippingAndClassroomDeliveryCosts",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/DeliveryCostsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "virc_StockIncentivePlan2019Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock Incentive Plan 2019 [Member]",
        "label": "Stock Incentive Plan 2019 [Member]",
        "terseLabel": "2019 Plan [Member]"
       }
      }
     },
     "localname": "StockIncentivePlan2019Member",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/StockBasedCompensationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "virc_WarrantyLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Warranty [Line Items]",
        "label": "Warranty [Line Items]",
        "terseLabel": "Warranty [Line Items]"
       }
      }
     },
     "localname": "WarrantyLineItems",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/WarrantyDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "virc_WorkerscompensationLiabilityInsuranceMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Workers compensation Liability Insurance [Member]",
        "label": "Workers compensation Liability Insurance [Member]",
        "terseLabel": "Workers compensation Liability Insurance [Member]"
       }
      }
     },
     "localname": "WorkerscompensationLiabilityInsuranceMember",
     "nsuri": "http://www.virco.com/20230430",
     "presentation": [
      "http://www.virco.com/role/ContingenciesDetails"
     ],
     "xbrltype": "domainItemType"
    }
   },
   "unitCount": 5
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "205",
   "URI": "https://asc.fasb.org/topic&trid=2122149",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r1": {
   "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"
  },
  "r10": {
   "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"
  },
  "r100": {
   "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"
  },
  "r101": {
   "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"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "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"
  },
  "r105": {
   "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"
  },
  "r106": {
   "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"
  },
  "r107": {
   "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"
  },
  "r108": {
   "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"
  },
  "r109": {
   "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"
  },
  "r11": {
   "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"
  },
  "r110": {
   "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"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.10)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r113": {
   "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"
  },
  "r114": {
   "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"
  },
  "r115": {
   "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"
  },
  "r116": {
   "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"
  },
  "r117": {
   "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"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r12": {
   "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"
  },
  "r120": {
   "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"
  },
  "r121": {
   "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"
  },
  "r122": {
   "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"
  },
  "r123": {
   "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"
  },
  "r124": {
   "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"
  },
  "r125": {
   "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"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.5(c))",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r127": {
   "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"
  },
  "r128": {
   "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"
  },
  "r129": {
   "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"
  },
  "r13": {
   "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"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r131": {
   "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"
  },
  "r132": {
   "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"
  },
  "r133": {
   "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"
  },
  "r134": {
   "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"
  },
  "r135": {
   "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"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(17))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r137": {
   "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"
  },
  "r138": {
   "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"
  },
  "r139": {
   "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"
  },
  "r14": {
   "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"
  },
  "r140": {
   "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"
  },
  "r141": {
   "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"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL34724391-108580",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r143": {
   "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"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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"
  },
  "r147": {
   "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"
  },
  "r148": {
   "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"
  },
  "r149": {
   "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"
  },
  "r15": {
   "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"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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"
  },
  "r152": {
   "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"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r154": {
   "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"
  },
  "r155": {
   "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"
  },
  "r156": {
   "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"
  },
  "r157": {
   "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"
  },
  "r158": {
   "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"
  },
  "r159": {
   "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"
  },
  "r16": {
   "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"
  },
  "r160": {
   "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"
  },
  "r161": {
   "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"
  },
  "r162": {
   "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"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "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"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r169": {
   "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"
  },
  "r17": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "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"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "250",
   "URI": "https://asc.fasb.org/topic&trid=2122394",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(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": "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"
  },
  "r181": {
   "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"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "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": "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"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org/topic&trid=2144383",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r192": {
   "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"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(24))",
   "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(a))",
   "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": "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r21": {
   "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"
  },
  "r210": {
   "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"
  },
  "r211": {
   "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"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(1)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(2)",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r214": {
   "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"
  },
  "r215": {
   "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"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19,20)",
   "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": "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"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(b)(1))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.P.4(b)(2))",
   "Topic": "420",
   "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r227": {
   "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"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "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": "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"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "https://asc.fasb.org/subtopic&trid=2127163",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=6397426&loc=d3e17499-108355",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "30",
   "Topic": "450",
   "URI": "https://asc.fasb.org/subtopic&trid=2127197",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r238": {
   "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"
  },
  "r239": {
   "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"
  },
  "r24": {
   "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"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r25": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "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"
  },
  "r258": {
   "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"
  },
  "r259": {
   "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"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(b))",
   "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": "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "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"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r27": {
   "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"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.24)",
   "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": "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "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"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org/topic&trid=49130388",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "712",
   "URI": "https://asc.fasb.org/extlink&oid=6410195&loc=d3e80090-111668",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r29": {
   "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"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "712",
   "URI": "https://asc.fasb.org/topic&trid=2197446",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123453770&loc=d3e1703-114919",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123453770&loc=SL108413299-114919",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r293": {
   "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/2003/role/disclosureRef"
  },
  "r294": {
   "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/2003/role/disclosureRef"
  },
  "r295": {
   "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/2003/role/disclosureRef"
  },
  "r296": {
   "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/2003/role/disclosureRef"
  },
  "r297": {
   "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/2003/role/disclosureRef"
  },
  "r298": {
   "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/2003/role/disclosureRef"
  },
  "r299": {
   "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/2003/role/disclosureRef"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.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"
  },
  "r30": {
   "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"
  },
  "r300": {
   "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/2003/role/disclosureRef"
  },
  "r301": {
   "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/2003/role/disclosureRef"
  },
  "r302": {
   "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/2003/role/disclosureRef"
  },
  "r303": {
   "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/2003/role/disclosureRef"
  },
  "r304": {
   "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/2003/role/disclosureRef"
  },
  "r305": {
   "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/2003/role/disclosureRef"
  },
  "r306": {
   "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/2003/role/disclosureRef"
  },
  "r307": {
   "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/2003/role/disclosureRef"
  },
  "r308": {
   "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/2003/role/disclosureRef"
  },
  "r309": {
   "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/2003/role/disclosureRef"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(i-k)",
   "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": "20",
   "Subparagraph": "(b)(6)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r311": {
   "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/2003/role/disclosureRef"
  },
  "r312": {
   "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/2003/role/disclosureRef"
  },
  "r313": {
   "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/2003/role/disclosureRef"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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/disclosureRef"
  },
  "r316": {
   "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"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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"
  },
  "r32": {
   "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"
  },
  "r320": {
   "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"
  },
  "r321": {
   "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"
  },
  "r322": {
   "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/2003/role/disclosureRef"
  },
  "r323": {
   "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/2003/role/disclosureRef"
  },
  "r324": {
   "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/2003/role/disclosureRef"
  },
  "r325": {
   "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/2003/role/disclosureRef"
  },
  "r326": {
   "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/2003/role/disclosureRef"
  },
  "r327": {
   "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/2003/role/disclosureRef"
  },
  "r328": {
   "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/2003/role/disclosureRef"
  },
  "r329": {
   "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/2003/role/disclosureRef"
  },
  "r33": {
   "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"
  },
  "r330": {
   "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/2003/role/disclosureRef"
  },
  "r331": {
   "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/2003/role/disclosureRef"
  },
  "r332": {
   "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/2003/role/disclosureRef"
  },
  "r333": {
   "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/2003/role/disclosureRef"
  },
  "r334": {
   "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/2003/role/disclosureRef"
  },
  "r335": {
   "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/2003/role/disclosureRef"
  },
  "r336": {
   "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/2003/role/disclosureRef"
  },
  "r337": {
   "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/2003/role/disclosureRef"
  },
  "r338": {
   "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/2003/role/disclosureRef"
  },
  "r339": {
   "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/2003/role/disclosureRef"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e640-108580",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r340": {
   "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/2003/role/disclosureRef"
  },
  "r341": {
   "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/2003/role/disclosureRef"
  },
  "r342": {
   "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/2003/role/disclosureRef"
  },
  "r343": {
   "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/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2439-114920",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "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/2003/role/disclosureRef"
  },
  "r346": {
   "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/2003/role/disclosureRef"
  },
  "r347": {
   "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/2003/role/disclosureRef"
  },
  "r348": {
   "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/2003/role/disclosureRef"
  },
  "r349": {
   "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/2003/role/disclosureRef"
  },
  "r35": {
   "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"
  },
  "r350": {
   "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/2003/role/disclosureRef"
  },
  "r351": {
   "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/2003/role/disclosureRef"
  },
  "r352": {
   "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/2003/role/disclosureRef"
  },
  "r353": {
   "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/2003/role/disclosureRef"
  },
  "r354": {
   "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/2003/role/disclosureRef"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "70",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=29639808&loc=d3e29008-114946",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r358": {
   "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"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450691-114947",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r36": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r362": {
   "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"
  },
  "r363": {
   "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"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "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"
  },
  "r369": {
   "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"
  },
  "r37": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r370": {
   "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"
  },
  "r371": {
   "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"
  },
  "r372": {
   "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"
  },
  "r373": {
   "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"
  },
  "r374": {
   "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"
  },
  "r375": {
   "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"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r38": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "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"
  },
  "r383": {
   "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"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "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"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "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"
  },
  "r39": {
   "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"
  },
  "r390": {
   "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://www.xbrl.org/2003/role/disclosureRef"
  },
  "r391": {
   "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"
  },
  "r392": {
   "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"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "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"
  },
  "r397": {
   "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"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r399": {
   "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"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 201.5-02(26))",
   "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(20))",
   "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": "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "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"
  },
  "r405": {
   "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"
  },
  "r406": {
   "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"
  },
  "r407": {
   "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"
  },
  "r408": {
   "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"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "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": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "740",
   "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r412": {
   "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"
  },
  "r413": {
   "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"
  },
  "r414": {
   "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"
  },
  "r415": {
   "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"
  },
  "r416": {
   "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"
  },
  "r417": {
   "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"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "https://asc.fasb.org/topic&trid=2144680",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r419": {
   "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"
  },
  "r42": {
   "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"
  },
  "r420": {
   "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"
  },
  "r421": {
   "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"
  },
  "r422": {
   "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"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r424": {
   "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"
  },
  "r425": {
   "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"
  },
  "r426": {
   "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"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(1)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(2)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(c)(3)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011",
   "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.2(a),(d))",
   "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": "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"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "825",
   "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r434": {
   "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"
  },
  "r435": {
   "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"
  },
  "r436": {
   "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"
  },
  "r437": {
   "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"
  },
  "r438": {
   "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"
  },
  "r439": {
   "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"
  },
  "r44": {
   "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"
  },
  "r440": {
   "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"
  },
  "r441": {
   "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"
  },
  "r442": {
   "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"
  },
  "r443": {
   "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"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r446": {
   "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"
  },
  "r447": {
   "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"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r449": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r45": {
   "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"
  },
  "r450": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r451": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r452": {
   "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"
  },
  "r453": {
   "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"
  },
  "r454": {
   "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/2003/role/disclosureRef"
  },
  "r455": {
   "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"
  },
  "r456": {
   "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"
  },
  "r457": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r458": {
   "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"
  },
  "r459": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "848",
   "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r46": {
   "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"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r461": {
   "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"
  },
  "r462": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "https://asc.fasb.org/topic&trid=2122774",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r463": {
   "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"
  },
  "r464": {
   "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"
  },
  "r465": {
   "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"
  },
  "r466": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(1)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r467": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(2)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r468": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(3)",
   "Topic": "926",
   "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r469": {
   "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"
  },
  "r47": {
   "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"
  },
  "r470": {
   "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"
  },
  "r471": {
   "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"
  },
  "r472": {
   "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"
  },
  "r473": {
   "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"
  },
  "r474": {
   "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"
  },
  "r475": {
   "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"
  },
  "r476": {
   "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"
  },
  "r477": {
   "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"
  },
  "r478": {
   "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"
  },
  "r479": {
   "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"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r480": {
   "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"
  },
  "r481": {
   "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"
  },
  "r482": {
   "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"
  },
  "r483": {
   "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"
  },
  "r484": {
   "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"
  },
  "r485": {
   "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"
  },
  "r486": {
   "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"
  },
  "r487": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=118262064&loc=SL116631418-115840",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r488": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "210",
   "Topic": "946",
   "URI": "https://asc.fasb.org/extlink&oid=118262064&loc=SL116631419-115840",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r489": {
   "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"
  },
  "r49": {
   "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"
  },
  "r490": {
   "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"
  },
  "r491": {
   "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"
  },
  "r492": {
   "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"
  },
  "r493": {
   "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/2003/role/exampleRef"
  },
  "r494": {
   "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/2003/role/exampleRef"
  },
  "r495": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r496": {
   "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"
  },
  "r497": {
   "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"
  },
  "r498": {
   "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"
  },
  "r499": {
   "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"
  },
  "r5": {
   "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"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r500": {
   "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"
  },
  "r501": {
   "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"
  },
  "r502": {
   "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"
  },
  "r503": {
   "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"
  },
  "r504": {
   "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"
  },
  "r505": {
   "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"
  },
  "r506": {
   "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"
  },
  "r507": {
   "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"
  },
  "r508": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4587-114921",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r509": {
   "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"
  },
  "r51": {
   "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"
  },
  "r510": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r511": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r512": {
   "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"
  },
  "r513": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r514": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r515": {
   "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"
  },
  "r516": {
   "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"
  },
  "r517": {
   "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"
  },
  "r518": {
   "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"
  },
  "r519": {
   "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"
  },
  "r52": {
   "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"
  },
  "r520": {
   "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"
  },
  "r521": {
   "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"
  },
  "r522": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r523": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r524": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r525": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r526": {
   "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"
  },
  "r527": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r528": {
   "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/2009/role/commonPracticeRef"
  },
  "r529": {
   "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"
  },
  "r53": {
   "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"
  },
  "r530": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3)(a)(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r531": {
   "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"
  },
  "r532": {
   "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"
  },
  "r533": {
   "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"
  },
  "r534": {
   "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"
  },
  "r535": {
   "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://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r536": {
   "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"
  },
  "r537": {
   "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"
  },
  "r538": {
   "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"
  },
  "r539": {
   "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/2009/role/commonPracticeRef"
  },
  "r54": {
   "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"
  },
  "r540": {
   "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"
  },
  "r541": {
   "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"
  },
  "r542": {
   "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"
  },
  "r543": {
   "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"
  },
  "r544": {
   "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"
  },
  "r545": {
   "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"
  },
  "r546": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r547": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "450",
   "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r548": {
   "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"
  },
  "r549": {
   "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"
  },
  "r55": {
   "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"
  },
  "r550": {
   "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"
  },
  "r551": {
   "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"
  },
  "r552": {
   "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"
  },
  "r553": {
   "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"
  },
  "r554": {
   "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"
  },
  "r555": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "35",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=29639808&loc=d3e29008-114946",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r556": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r557": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(b)",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450691-114947",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r558": {
   "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"
  },
  "r559": {
   "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"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4304-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r560": {
   "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"
  },
  "r561": {
   "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"
  },
  "r562": {
   "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"
  },
  "r563": {
   "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"
  },
  "r564": {
   "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"
  },
  "r565": {
   "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"
  },
  "r566": {
   "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"
  },
  "r567": {
   "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"
  },
  "r568": {
   "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"
  },
  "r569": {
   "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"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4313-108586",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r570": {
   "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"
  },
  "r571": {
   "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"
  },
  "r572": {
   "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"
  },
  "r573": {
   "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"
  },
  "r574": {
   "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"
  },
  "r575": {
   "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"
  },
  "r576": {
   "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"
  },
  "r577": {
   "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"
  },
  "r578": {
   "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"
  },
  "r579": {
   "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"
  },
  "r58": {
   "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"
  },
  "r580": {
   "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"
  },
  "r581": {
   "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"
  },
  "r582": {
   "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"
  },
  "r583": {
   "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"
  },
  "r584": {
   "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"
  },
  "r585": {
   "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"
  },
  "r586": {
   "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"
  },
  "r587": {
   "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"
  },
  "r588": {
   "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"
  },
  "r589": {
   "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"
  },
  "r59": {
   "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"
  },
  "r590": {
   "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"
  },
  "r591": {
   "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"
  },
  "r592": {
   "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"
  },
  "r593": {
   "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"
  },
  "r594": {
   "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"
  },
  "r595": {
   "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"
  },
  "r596": {
   "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"
  },
  "r6": {
   "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"
  },
  "r60": {
   "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"
  },
  "r61": {
   "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"
  },
  "r62": {
   "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"
  },
  "r63": {
   "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"
  },
  "r64": {
   "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"
  },
  "r65": {
   "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"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12021-110248",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12053-110248",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r68": {
   "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"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(3,4))",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r7": {
   "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"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(5)",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r72": {
   "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"
  },
  "r73": {
   "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"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123465755&loc=SL6230698-112601",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r75": {
   "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"
  },
  "r76": {
   "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"
  },
  "r77": {
   "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"
  },
  "r78": {
   "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"
  },
  "r79": {
   "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"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(23))",
   "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": "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"
  },
  "r81": {
   "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"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "712",
   "URI": "https://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "15",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "712",
   "URI": "https://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r85": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2417-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2439-114920",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r88": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r89": {
   "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"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(24))",
   "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": "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"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r93": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r94": {
   "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"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "810",
   "URI": "https://asc.fasb.org/topic&trid=2197479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r96": {
   "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"
  },
  "r97": {
   "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"
  },
  "r98": {
   "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"
  },
  "r99": {
   "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"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>62
<FILENAME>0001628280-23-021822-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001628280-23-021822-xbrl.zip
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
MJAV6:RS@*S<L:@%_3 &?L3)RPK 0RB&A2 Q!BJJ)L@1AP:EB1@61LUK G[6
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
M.(<]WA)&L85M8).1N_0_N)6\/ <7U7,'@!5HA#4 / H S.J!/#,D!,U1GBD
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
MX\"V)W.)'0&V]][N5K/<[KKTG+][@V'?#XM^\GQ7Y7C_;L,R[NL?:Y,;]20
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
MW,E&&/4!OL >:8"JG*Y)& C<&U6)QN!JC3<K3>_LK-_[D985L/#&,['NJ&/
MY+TN7]X$@@W&3AC!L6"@M%H%G.*LIQCKL%"^KL['Z#5A>U<.<8H+/O1Z;C Y
M T/TI8G>_D<&=A4AA"N"2&X(XL9*) T3B%F3FZ (U:GQX?SAU?\9;Y"S2M:P
M-XS[EXZ;X/#B+)[U .%[%G3J?MPCTX[]UZCKXRZU/3H"]:?AM3U.JL+FPD>>
M>7U:L=96X__%7?#:=5.O,:.B[4K5T.I^W-Q2)$@1X'N0<]V).W52=XON=Y#\
M'FA8;I3&E7;&N$$."]C"2_E*4RS& QAU  VJ<<3!!VT+X"/@[%(MTF>% _9K
M@V("CYW5KRU,M </&(SU@&FQ*J4M*M;%1+F :33:L!6"HGV&8-6ZPS3H4EN,
M#YE,81.N,SU8/'A#'S"M,FS:NE2(!E'I&4S-&-X1%VJX:+[E5!/UJH6)8ZWF
M7BJ0H)$,2AV]S*&^TH9*Y:]ZO$.CLRDUR/^PW@-M;&SKJ+_KHAT]]"4[]$K%
M%52WZX2-ZM[5$V!&!;PD+OYQT7<(K$N <J.[IV/%*8ZVU^A$%3*])K1[Y]<)
M,36GR1C/4G9WHX I@D:4< I4;>O=^,IK_+<;6_64N>0W<2$L / &#+5$0%C7
M[VD*C6, <UC&2F.,E+:^^)[68:P 3PWPVFL39R0IJK3Z\UY4-SLZL5J\!NCR
MON@/HF%Q\_.G91)TU7CG3>^,/#,X+LXF' Q #BP['$QNW(JF,IA^F]&LN9CB
M\,D#D^RDU8VFQ33'%UW8;(>CTO"._'H4%ZF;>!O^2^8W;"''!2##$ R(2-@S
M?;%P;@,@<]1ZP4R/NC0,(>G0D_& C?'_BB@;U<1+W3C.;5#O3^N[/YU8>+]E
M>_O;K'G2O  UD1I%G(P5 ABVB/O,(6,"1=IA8K$-(<OYS;M5D9P&R070]X"%
M(S^&XLHPAFOBQK0)/Z-;)W)EN4$! X'85R9M#,4I)7^L[912<P[RXA*;1=AU
MH[3!#>!%_8B?9V? 7O98)]P>^GY_=%8!7L+NZ!;I#P&[!^5[W^Y]W=U!1$U@
MW(.)V+N(1X!F4-J!\;)I_*EV'K@6P'M02L/M^)EJ0ZTQ6B5^UE)S8PC!C 6E
M-(!>XF=R58&#,%+S\V_R\Q<&_.PSKW++&5*!<>#GW"*-%4>@CUNBG&8Z)QMO
M^ W\?&V77H)QYYU:C;%CY?I.-ACJQ,/ OWT/RGYW[',8]O6XBLJTJI]>>,5^
M=X'47&2&&^Y<[L&8$5YZYHB7P5B0=BO#]2(PK&;!.["@C9#*.%8@]131C(,!
MX(Q!2M* 3)XIS+254BM@P7PQ"U9P6G(B0-N-7'A7%],Z&=S+&="S1LQYKW\:
M!75&:;ZFEMYH@_A%)DCUA"F?<M)^]2EH6F-/1GKDR<@=E>])CD]==I34@X&/
MO2;;A3;1CDD*5[4QEO=5)5BK+>G*H$C.SOBZ\A'IVZFG;#7VNDGK[1[UXJQ,
M/%?;G!ZF_Z[;HS2\N"=/!KM9.6!+W;$W\)-WIGDEAX3S\!PWWC4KXZ8;8Q=[
M-JWOQ,P!KOL\9?M=+4E'.Q^=%E,#JAR_I3MX[ 5O%YVB?/EFHQQP18_)*U[#
M< +LY?$B_>.&Y7C=& U\&+4;$1_'BC1HQ=%%<M9.9FE<:Z!E4K5?3]\+:.F
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
M;[W^:3P1K:)$[]7!1V^W@ L!^TFCVLIMPDB]W>[?)>UJ5+L75&N]G;,)O<Q
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
M>H[YZNU<_5FQR[SO]3_!_Z[=\R<[9[&_/6Q]SKZBB][:.:;-G=TCQ0S3'GO
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
MHEVAB./24,\H=R;;>$.S34WU.L^USG.]7J.VTXXQ@#_G0L.&X64("&HU<U.
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
MWS;]J\8OR *&]%\L^^WW7K_?NPS]0?HW_>W?C1/S)31,XX:-XVW)QH%/^!Q
M"]O#J\;V<3\$))";NEGUR_&7XWM>MH<GC3];;QN_F^[99J.5J/1,I[$]&/1<
M._UK$SG'C#]O=]N#(;*SXBB.\0GXX$[H@A T?JD>!+>J[[W5:*1YF'ETXQ)O
M=XZ7^487U[$W&C2&:?H';:0MQAGJ@7BTNQ6Q7[>Q$UPXM_ <4 ,*-][KPAM?
M#*O/U"9\SNAF(E$;SULCD<; 0]K=80_&VMBN'HK#_A0&0X.DQP^9S?'%]YW6
MRY.V.QF_-#ZA7]\";WO1;_?Z\Q.%OP-%# ZGO',%[^%Z_8M>/UUG.AWLV'ES
M>;I[8@X<O_#"!R)(XY6F?LY6XQ:M61658E7[Y,:M\]ZX &N$8C/!HM> .6@/
M!J/0@#&W/<P$2E7CW)S==#@MUPFFY@(F&2]8Q,+GS$4;*YH'PYX[0V'$F3V&
M1Q_#6&".D8BX,;K R_]K"6/LM$9:E4P65 LNHV741ZV5"2PX(4IC3#/-U)0Q
MEE.]CG>J5_O37"%*-LW7]OGHO"1'WNV^;Z/1Q1;'8_.;OT[S^V VR;V=L^NC
MPGCAL\B)XCF6[^3P5V[A/XX64EF(*G.U\89OS6^N-4"2.[B0'O  , +E*J99
M;5S!M&Z"[O5P!5"/S;#1[<%213/J@#4\00U-D-USR4/R*'[M04U BK>##RY[
MHT[23KPH]GOGZ1F#$>!%):6;27\G)?M\- !C',Y[W03(B "]TOF"FY]?=-JI
MGV^2;=.@C, /X4_X:;N#3TW=K1ONQ/2/ UP )AC@O('(WD-@Z/:&@.H#5":0
M]%LE&J ;P'?V#(TM5*YS5Q3@DV0YMUD4F@MAF9)9KLQBH=YMO9^6ZBDFU+<P
MPJ[I#IM@@$"XW^/HWZ;!OZW&_@F'_@WW\Z>2>N10;5T>V9SRD)F<.!L%$304
MQ!CC20!XR9&[J= :G,8M-B_X2/&8H>&O;$PE]/\[,GTPJHWV^3D@,(@>F*6+
M/ACG1&B*/_0HCVA>:BFNT1>%O9+HRC.X'<Y!*GJ@$_\[:H-BS((Z]JT>&L3A
MQGDI$G=)=*D]**1PR>#&X>CAX?/T6Y2M0:F_G398$6R7@%^!9XI/<2"1HW,D
M;7756"I2^GIJ;AR.2D_;_1N?KHW7X"! !X^KAPY/8+(&FPT8R7&EIFB_77K=
MZC<P"ZD7T29:_5&_T04KVFF'[O@#=*\K7ZW=Q<,VP7=!:3<;@P"X8P:#@%[4
M: C#"/5(P5\'GPK\3-<;]0?I8SL"GRM=E[RETG4 I.@.2D&H3*2)$=X9%@M^
MV"M?#R9DV :,N\)Y[\*+X!/ +82Y[X R#T?]\7/KA\S-& C";A<7IQM*=$D/
M&]XE&YM3XI $)7DR'D4#Y O_IW:\0$) IDD_1%C2Q'<;0QK44G8:#'-P1DF;
MYZ+PF1%4@%HY1DW&E2YNL=-S0?,TJ+T/H6YA<)^H.?O9 &RG*?=VMK/6Z5^T
MN?.1MXZ/K"R\R@I&%#B(1 CIB<9#-HX&:L!W*N"3C3<RVP0_= [.ME;<Q4U1
M(ZA"K=6U+QI!7[L0AW5ND&KS;OVH/9*25=J!IP # Y4/7Y+#"\)?>2B;J,6G
ME=\[!CO46G"FVSU?PEF)1@D74S"&*OMY2OLG I&Q7O\WH%EJUS%HH'%H?TG*
M9Y"^>H3C22%_IXR-8;SG%T/XQ^ 2(CH<3#^@'I>.=8EA-6-VB<QWO__H J8O
M/17N9J]F 6<' H(TN>")C0<#+PC@ZU/GD1GLN@.(VK/X;_O!8)S7O1HOUV;C
M2[O728$"? IO!@8-+BX#VQDNT;G>$!-LJ96@"+95(.'V16^0Y.37?NBDB+SB
MV:Y2@A,75NF;[.828P>]SFAX^R4K0+R:0C[*9B9HXK\GXP94%V#J"<[\&3$1
M!ONKZ5R:J\'&?Z;99MM=,C.'LZ]_.R+<T6_@'OT#7@Q/,+HP?;#EZ*N@T<;&
M4& 3?1BBAO?'V9729ZG=&M .FT2Z<0%>P@@NK]&H_+BDK@?W 738C3I5CFA:
M$\Y!@3&.*%-6SJ5PHE=VF"IU#9\TZJ8X8QQ#@;:BZ09'#&-Y;/G3#WCWE<]0
MC)-^)5P"IL M +21NW_P321)P#CM4N'O!^ ^H <^/.D-)ERXE!?K+( C$,Y!
M>Y @#'[\2_O?L-3]<78+QXN?5PR^57!8)0PFLF#;_DN*'DOO!*]8RELR@GL?
M"L$TA2@C8[IPBDF;N5R&#,*16TI?Y-P6 PQW+Y8O^=ZX))G58'^OI?"MN8!O
ML'/B3YK<:.Z?R>;E4>&9\MCL.D-_2'AKB!$^D!R"<9<K09VD&V]R>5=^(X4_
M8!(G? (SJ^\W7D RW)6OGR+ "9?#E *4Q+[,BBV70BBTIR8ZK85S@BNK.>>1
M4<4L"Y:I?&%/E1M18E.9A$5B-):?WU.+L?J=QE)$V,\F1J?;$ASL3.!^8.%
M>$P@@A84_F(%R8-5"L*>+,9\X\V"$^S_PJ4.X"^TDY<W[_EM-BXZ$'(;]"S1
MH\#@'()[!,C2L* 9 -R$VRPG*SDS11&-UIFP@DNJ+67&2LEHM-');"TK3R\K
M[SA #N59QG,!TQI$!,CA@JA"(1,+1,>@K"+'S-*"TPK_J@W9%],9A2G!:7<Q
M1.GUD[.RG!S HM,0F1.QR"!&%\IE/.,Q!TG(D)-S+0=/+P>[7UO;1UG@CA9Y
M3BPH'Q&Y*(@.* >FH%FA(3"W]G;,2*I?1UZPR'?(1 4AR[@B#ZO"G<U%WRD-
MM0>"Q1 _KQ=RNLN;V^B%< $*2 *+A@B74Q"%G!.?<Y]Y+4.P'&*Z.[V0M/_Q
MAX$(JX\^<+\W.CYI_#'JI%QKBJW+71>(YD 81EW?-Y?=FTQ!!$,R'&+\<>/H
M5GN?H?\EE!F-7]KH&7?1 +4ODOO=Z<$_E\P*RF"$H-9)I[FP(5<L<F:D-88+
M2C/]&#^WEJKM+Z;=0?OYOM?_? $WB6WWYZ@/@7Q(U*G[)Z8+7^WWC0_PN3L!
M;!K<+Y_XL\GH3#Y1M#X>^<P:B$\XD7G@ %TL$/"6'>$RTQK<34EIV'C#%HAK
M64Y3R>PW]S+0J<9R@C*^'7PS=U;M.Z.O-$CI??"NX>]AF2VK$W6W7=4/$U=L
MW6-H\SG BY1_J[;580"X#5%FU4#W,#;%O?:J-.-;H>U6X\]4G%#Y>>>86L/(
M'W>)</.TW77M"QCQ0Y-]F&>P(64,VW6=0QFU8-G#L R9+R:'>I.CP! 8GH?O
M>]Z&&!CWI]+[7DVE1F\-@M)>BRG7R/C3T6!8UA1,+5.UR]0MT[KE[DUGE-X/
MWF7D4"KJ!PPF7GDF<(=QW&S)PD!+[WD9P(+HFU-I<\YR+RSW6IEH WA-O@ '
M*13KP/Q)3>*9W .(D=$ZIW-">=I_51!;,?"3HJ/>:A,@V +OB&9WFD0,J:N4
M_$2 ]-3M2,>^3F]F;?],3X91?"K%=;S(@[(DXGUOU!^>?"SWA7OQ'1CIR;*3
M"6-$  9_A8N\N?K9Q.%Z^PH";!=%%)F01$%,@IQ1X#;G&8A#0,(HHQ7C'OOR
MS!8YILP>F)!4>0>S-ZBK4=(.49K_\<9\[2=-%*E\RPJD/=3Q!GF-7 MWGF[
MZV;CO-RF3\4Q]]F/+XL&VZE:"\2[+JX*7P%[85Q@)P?E@.LM7BP7Q)VIF<*6
ME"'&KJ@W(RFK%;;!JG1*$\VS5!C(E]S]6[ /@NC>CE?/OQ%"Y70YZ7\/OI'3
MQ00ZVO5A?^2&R>O ??$R07=CKVKGN/0PR[S_A%#=/.PBF#.PAN<@B=756S##
M<#] _++\8QDCI/-<!@EQ.N=,9"$J4(C<TTS07%C/[&.,T*> A2$8HL^;H;5+
MO,A&.7B^XWO[VP)<XJOFQR.E)"P"*PCU*L-C.HH8$R.QUEFNC#0^IV"O\JW\
M=GN5JGOKP"59KQL'ZG8%+9WH=BK8'0P;J:BMGZI*\ Z37F$*UL:=DR=DMD;
MLN1UP4/2T);+*P4N#3A).NI(1:Z-PKY%+A=%+%RF0OQF"F%Q\<=N]9Z?X#4_
M)U3^<YP8_7E32M,Q&GR_?:2\B> I<8*=!XFPA2<V&D.,5<$9S[V@>N--L94O
M2C MO?. *ZJ5U@H)P$,!_PLVV;+()/-.^GR]VM\/?F3K\B@+EC(I&5'6&@*F
MD!-PB32AACOF)*P%-QMO]%:Q8+6G?8;DTJ0Z.=QU2$5?:9<;!& T '2HR"#J
MF/!6BPH1I"G!:.FMB0?YXG=*U2*C]U=ZG]K0P>N#7U65EZV%;%;(_L*8+%AG
M<J<XD=)"3,:=)%9X"-&\%,8'(Z1C&V^R+;Y8REY#(<*".K))"YJ\YLJ"+IOV
M?& OV'D';HJT=.V!@70>T.;E$6!<YDUN"<QI(")$,'@A*!(R70A7B-PADQ#/
MMN8;MXX]L KJ%@4,$^V;%]31.M-/]<H0QP$^'F/(UDM5UJ8[B@:CB90%&[4[
M28X@*'O;ZUZ:J\9V_PP+AJO ;5RBTNT!<*+3Y5/@N3TZQG,+@'A%\NJ6D;N,
M:QN<R .8"*&D-%QY%[57$1PTI])A&5ID:H8%8$[N9HIPC5NJ"O?G%M#C:Q!0
MA0$<=YR$ J(#88(G)HN*H$.FE9 QEWSCC=Q2=V?--TO36N8)'F9@'R82:V_M
M*20!#Y>HJ!E,NR)*99& V8Q$!>D)99EAF8:H26+WE06.^05$:9B82JF@N_*9
M-(NF8 ';:5$A(1C(P*NR4>:6T^AT*@7")4X^5+W6=RUNN4^[("=YE9*5/_.2
M\M;VD<XL!#L!?&_A-89;.;$F"R0#Q0)K;T.T'FEDYQ*4.'V#M#%41?*3_D9]
M0K+:VV@/;@S#,B8@1N:R0G.9TRB"0+!1U MFI5<F.+IV/1Z\^&=7>]M'(4:E
M(-@FS@L+KH<OB):Y)%KKO(@VCT%(T.>[<C]/E8!]F7+SO6ZC"<X,U>68IQVD
MJ;/DV_51ZT:KM]7@C?JC!Y\MK\Z5S]QW[C3Y9E6VV[TY%CX^;X=#EW4V;7:
M]4'P;Y0A5\=,Z^WJ6\/BFT.O4R>F%VY?5I?$*F MSW?$3MI<3=L7G4Z9'!P7
M39?'R0:_/BQI7_%.$&2P^97G-:T-GI'K#G\E5"6:G9<(R]IC+7C^I_\V-2V4
M;14<YZ$N_\8;U<D0W$"86>\34&P(0_"L 'QB!N7*+P/>E"FGH\]C]%[DFIH\
MD[@+&CT-6G%;94.PB*S^8_D=@-UJ=#NA_-_WO7ZY>]D*:P?_7BG7O8]'F1-@
M9 ,G3%*(0*T/1'.N\-2\YSD%A[M@&V\*MG4;D^W,B?E4]H'GSY-M^&.$Q0Q5
M85<5$,+'%=[>;%1-G&Z=VJ/"N'$11P-\'IP9#,?WQA^EI'_:P+K9@B@WTG_[
MX;!E=<!%;^D<YZ'6QNJ $:SN,)U5KHM\!R,[>=QZN(@J9DF4L;FWAM,<O%4C
M?"X-*X+$PL/"FISZ.CMU*[BD(HA9%-GM[M9C_EP-^2\<<3G8\5C7 ',/@+D&
M@.'4XO8-)WF*&PL\K>(%)R(+/.;P3\7RC3=\49WH-,"@N]*>$;+MP2"<VTX@
MPQX9G+0O&K]L[W_^]R*I6PW1JL>[W_L,HUT+VE,)VA5$LP&KW8K(2&YSL&1>
M8D 3.7$\N$) Y"C0DBTL2+Z')4-_>[$A^VW)38+78%U6Q[P46U3C1$QM]TT1
M0-3$5\F"/(#PX8&JSJ=4?49IQP'9^Q#6C _W4& *"LR4=AFH*2D8=F.'OXF.
M,A(3,^^P_Z(._%;&AYITK;ULS<?#EE_, STNM^F4@H#ARBSZK_/*<ZO.FI='
MDANIA1:$<T,)A!N2&&LDL87@7+A"Z;S #=J\6'2HJ'0#VC?S7\:R8S_A>;!@
M@=G_EC2LS?H]Y //&1GIC:2\($I)S%.JG%@7#8FL<#X:;:6E6!/TC?CT-_0?
M?SA#_66%['298IH- [<O+CIMEXH#FZ9_#)_^@CO$(;:[*;VZ,!#\]YW;@]8,
MVH.+7AM]XR?0WNQ.G_UF_.7P?\>'_XD/'ZQM=ZFE FRW%]3H(#2A.I<0Y45!
M; [_E$IJ'JBS00&*LWDE;:35;*3E'*SZOD%2NJ;I@@U/WJ8-G7;X$BHV.91D
MK*FXPNAA?+8UE=^8FQ)JWXBFW:^^AZL6;)^4#+PW9\4Z/= RW&VK:GG2[MNX
M>!;N\<7TVTG%<&M]D XN>;2-%_WPI2*!/#?]LS"<.)JT=0\VHKOA,<F\CHQI
MF9F<62&DDTJIO% T"%7$J'Q^A-9['E//DS+59-.(J=4GR"Z=/P.@%@OWA%JX
M4ZFVOM>IFSJ;#2#3.P_[YNM.>^ ZO<&H'_;A_K]W>N[LI;'DJL*2\]99Z_K3
M^>'Y86=O?U<>[']DS7\.3UK[VQ+P@;7._^XTK\]X\]2W9['D@'WD@!]P[5^R
M>=HY:>T<?#T\?P=8<9:U]@_8X3]_7>_MNZL6^R/"/218>8Z;O$QB(S6+R6=I
MB%;"$^9S#;#.HA+91DVE&OPV^DU%Y!G-M-?>*P'>H@G!*)H98;VG-E,;C0
M?8$G._JCD$P3S'H#ICT,YHC%IZ1[,?73-Q\W/3S'HS?"<<D+)9@VRD7K-=+_
MA@C6R;PD5126# X&83"H$QUXCK1]/<%T"18Z)!+;H?E:T4M.[Y F^B&?#E:>
MA'3LL9U.F)[W^GAJ\BPD6B-X->2%2O@XP-D?E^+V:X0K3_;,/:UQ"8Y;NMC6
MPPN^*C<8=88)2^MAU\6]BV[3QKOC8:,Q6=P-<65]71PE"CBXRI0L!$E08(B
MG_"&IC-W\TZ[G*OV]*&$FDH/_)HR'"W)G(;A''F\^U<-WT92KI .,]B0'N/Q
MH-T0Z0^V&MN)-<7TAR7TP]@#&HH)SJUQ#B0M7RCMQ,T!C)+U#4FXNK[11<IJ
M_$=(E*PN3)[HJMZY?L.4Y I?*T*I>B86#CRQ(.-Q6;1EBV:N'.G41@Z^#DQ;
M,H\-;$& TF2^DHN.Z>(AGD;);'R<*%"K,_RPRFE42"R#U%07U8H-TM918C4[
MQV"OEC\D/&N[=DH#+5S0)%%VO/AE"JD2K9MW7R!$('9_U\N $]Z['%,>?7^&
MBD74HN4( <FVT_C&@]NNQ_9*DD[/;6Q.P6G]>)3GOC 1HLFH+26 Q8P8XR3)
M@M=6R\#!I&^\D86\)=.TU#GL)^IGM5[S1ZPYGLUFB@OM(K&@>5CKII#!*"?1
M)@^69A Z;KQ1N5BXY@F2EEGVIVJ]LU[VAR\[;1T?L;RP +3H32I!A(N*&%W
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
MZT;N]:,G^Y2,^]B6KN=$<_BJ-_(M,X -E,M1ENURR_X!;M)>5L.KO=J;SD^
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
M=\$K(5@,ABEI"Q\9APC$\>P),A!K*5A2"L"P<:]E<-(1:HJ"8'\M8@S'S;+
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
M"?W!RV*[:-;D$Z?OK@%36>MT6^[MO\L JR7@>?OP]*_KUO5?EX<?X!D[V^R
M_74U>WBKN=_J[.T<L.;.F83K *O/K@&KSUO[30[C/CL\/Q#-G</3P_T_XM[^
MKC@RG'G-K2$L*DX$E051+*<D9XY%78@<;CI[+E_EEF?:2PA%(!B)3H7"9E8@
M25)A59@[ZG4SV^TP=S!R"6J*A2?VOSF8%R1PG#Q$>6+2^;'0B:3=17%+3>P!
MQO!-\'Q8?3P2N[($/-^)9RJ7(7<IG )5*+2&!15%X6TA(&0LC):*&F_D_0C+
M/L,(=W& F.;X5(_P5="WO( &N2-KC) L<N(RJXDP3!*%A5TNC]H;396.Q<8;
M)F_A;KD(_4;/I2TPF._-1,H0^H/J1.$TA52G/G/Z<!F1&6A(1.ZG+ ACI(6G
M%%PK8PMMP%%>R\A3RTAS_^#K$28&,BTMR0,*"3>46&8Y"0$LF** M&X9(0$H
M#7ULX/1X@: A5]%I'P2 O7;,>B]SL-"%\]9*MQ:(IQ>(TW=?C[1VTN:Y(!D7
M&9A=P \=(""B@@K $QUD#I;K?O)0GJ(?@3?= VD(3R$5+J,Z$UFN1)&)7!9:
M2NX-C<;GUA<N6TO%TTO% 3^*QI@H8D:X=XZ(W$ L  $#B2P8$\"9"=+>5RJF
M*1S0^[@8]=U)XF1HUXN"<I$HH&M1:7<;X:L+@T%]POW&84F_OW%9P&/Q 1V6
MQ/Y:BEC%_H+7+N6XL. X=R$#E0 ,<E8+3W.:V4@SX[E>2]M32UMK!S&(@B_
MN2 03252>TV,XQY;H7$A19'G,MMX4Y+.+92X>1'KV:%!/L!$ZC'N,SA+&C+L
M#?'3KTA:AU28HR$RB%02B*[P#8)5[!^(</W@,&GCDY35WX?_1;(0$#V45>QN
M> %Q'#*;?#&=4=A:CO?NY8,$?$^<(:3O:OLV3!_2KL#D((=7UR<.=E#1+_!%
M;S1H=,(QO#T$#BX$S%@AS?M@U,%@JZ1VZ0$F)-]Q4-.)=E$;.J!_H_X@+8@=
M#6!(@\%68W>('!?XH]Y%NULUJ(;7,\>)N'D3;P%ZBP\H_='$6%2. >[7!:A
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
M+9L\KOAQ.D2ZP*,31P#9![R&-'G@CW'4-]2Y=&S]0$%@_PZ#'?)R]/)0D:0
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
MK01O/X]@]'ZMO5_>"(_]M/2IY/XE R+KY<[&H%:"=YH2O&H$<1]%S;S16L#
M*9^!J5.0H?<D\M,5ER^1I.NT8B5^]WG$K[4;AP%ZKYM^>\@;\+26'O^BV,BT
M:8V4O5>+E,SP\!8ZQ31B.;T(^,.+A\<2UQH"^\\, 6@)F:9:2G"Q_Z>838BD
M[%9Q]_N4!QX1\OQ'2-5C8Z8;-V"E_*"*\E*BHQ8192C=YK]1U.H;^[7(>5X!
M\+S6K'%Q^ IQT>(RX01+"OR,4D;48KQ(S\9=OZ?74ZAT RY#0>"+0=$$I7%:
MY/U;@B5G.( 8Q,S[C!F>F*#]*@GWSZ6B,XCB>N-N32@K1_TL1RE@!,AH!8T
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
M"]>F7HPQ\)H"]7)X_OEC"O@VU_)E&F\\PH150_ Q3LO+SQ];5X[3*."BA +
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
MBUP[//JZ"VZ1ZVO0C-991?I$6@?<%@QPJT2&6XLR%^,8"'33D>:V '45ZJV
MUN+.7RSK3J>A 4ESN?O;),@L:JZ".5 )<?'$4K&:V6B=CT7H/,0!Z3M0K46?
MG9TR>C#^;*6LX2YX[GNKX+_/\<5ILZP6<G7.L"!2,Z_1L*@3C@$8)S5WQ2;J
ME.A=F-8BT*Z.&.W,=A'JB:X![#G+^:;^-)W'>4:96_7J<F)*!>ZX9J("BBMD
MN[ E6993PA]T;+O6Q,RY#<]:K-E5Q\\=L89,/Z3MG]O_K6/349Q!G\]?KKII
M;M5!^ MD]<47SKWS^'3YU:7TI&3^Y>>\'^<?8"^NX&6MD%<X>$9)")69@-&I
M%AB8>M>N!P5PW MAO"*O5-^IA 3E'.L2,8H4<O*>M;;A[2:$RI"'F55=<0JH
M8&.B=B8VK8AZV*,B(^;X-<4D0ZB?LMKH.GS'55 7\4F;,#JKG$656Q6GCBPZ
MYUCA1>'Z"3(5ZB:KZZ,;4YW2MT_/;=4_-#W/#.WYZ2-#CI5'YERM3.O0CNV
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
M5@D/5V;?9^7@(1[A"0Q_T'12D>GM$NS4 %L]0*7(-KWS=L3GX.%I'N%YC.2
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
M4)6I\:NZYZJ8"8(TXE6_)HDA3GD$*2,15 @C@9F(><*<SZ,<)YT:&S1B[WH
ML:H#4"4YV(GN<2SCBKW#0=8 B [,'TY@@M]KN7T.NUQ1]3C]&@#=D8[#KGME
M_0[&/%'J/"ES'6N\HS-/[8[.TGSO[1O2;/:18E[75% /"[6N]X^'!=]F(E;$
M5C.&*&;&C&,1-V8<MG78%)$Z0R2EW*\$K<NT/BMCG,JTAU)7JX,=B.L; .V
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
M6+AR_(<7J@[FB)*/6U9S_$=R4J7S&43HZ8DXC)FDD<@)91@*@6S]!"DA0XA
MJ20EN<982.)5*;QG1.48&3/OK@@Z/0*-:1+A-(L@9R2V+G1JTPHY5+% 3&:(
M:>Q57+DW:&.X:4*!YNB6F69$[E QN /&W3Y?K*U+?&W F-K#H0ZJ]4<DX2FC
M.20J0Q K*2#%$84Z(XIRJG/&$L\$X-:)IN<$.5ZR-V"ARA*(XT(._1?R <0)
MC7644 RSS% @3C+S\4@0AFF:*B9RCH7V*M-P/<!C,.+[@PX3(='T)\AI]I<X
MHLK#<+YM+9%?V7I3!*[QU0W+ )3Z;&TG.A7MHMFK&T]4#?RJ<J-5N\5%[2"W
MSO*G-4AG*9=*B8S#-,E2B'5,(.61A!FC$3;_I[ER[S7J-.746.) Z&TK8"LV
MV,H-7FPE=_1F>*#?S23#8#HPJSPGG![=3(/#.E)STQ#P^O4[]4*JL_VIVTCC
M=4/UTNRH.:K?G3VSX5?W][:,VDK\43O@;S?KKZMB_D\E9RH13,9:PACGPK V
M9I!FPO80RI*8I+E,"/,SF3MFFY[=7 M;GQS>@-K5#-A.X)[>YR[ W4R^0" .
MS- ->LU)8"THV$L:,-O],ARA,MT[9AHWR_VRRB<9[@ZWA*B9^#=EZT<H>6O6
M*+M3NQ:DU2^MZ1G/(L93PN((IA%69B<N**0)QQ!CIA.)!(NP5R:;KP!3,PVW
M$D-6BPR*7=_6NK9&M7=_\:A8X4LVWL_&C8&&1'Q@6CHI"KB5'C3B@WW7W+I4
MA]5@J#J![M -4CG08?IGK"7H#DYW=4&/<:[NO%@G!-PN94N:P+X6893GG*L<
MZ@1'$">$0Q:C#$J=1E&>9KD27B&>GO-/C?^.NPP>I?G4@H?HU.CT8!Q/ZX>#
M>^@3]Q!(7]/9T0>O\,T>G69_KOZ//M!TM(3T&F;D *IJ^VH$+6<LRZ+45B_0
M"G&(980ACZB$D98XSU/%DRP=)2YJ)]+D2+$*>N&.P3'\-#@&_%Y[;*QROK1Y
M_0-V9-)1']O0Y'IM.)/;$QLO/ND$Y.<..]H+]-\CFN@$P&!!0J<C^U%Y6:QG
M3;)34RTI%R+FQA2%$5<,8F[(F+,4P2Q2&8UTIF26N3#RR<A3(]9&.#=&/,6)
MJT0BG:80,4T@SC,%"4O,YRNG6O-48IG';C[1JY :QP.Z3:#TJ\EU"EKWU^ J
M( 8F=6<$G&GYK+9=[&IN.F!6\Z\]JYZ.-PHYGE5CRW'G+PC:P.[M\INMVW78
M8FJWG2-)GB-)$I@@8:S,U"Q8BFW_\C25G&5**\-I7N<7_D),;U'OA#WH8>>9
M&-7C6;@9A,/B.S!77&AJM\=]K\4@^^W^( [;YZY+@"GTNW, R+'OG<M(/?OM
M"K&YWRQLI:2N:B2[&D)<"AHIK:'D*35FG?D/)3*%.4MXCB6G,7,RZWK./S7C
M[T!\L*H21<21%VQA9/=LX^OY0-QX<$"8!R;!0X3;"C<U?L875OP?J^X*UA<9
MM !33_!"-17VG'W<ML/]H#EI3-QSF+X]/T\.KS]LUN6:+6T8Z2R5C&E%!-1:
MVD-D0W;<&GT4*Z9X1G%"G9J.NTTW-4:K)0:MT18'8OMV^^Q$O)O#PN,X,&5=
M"V&//I\NR%S1YK-S^)&[?+JH>MKDT^FN'N'*=1S=[5VA*O_:K?F/M']YH]2,
M("%TEDHH;)XV9C$VMI**((N36.=1I#/IE*Q]::*I4<C?F&'MHBK(P+9B JT<
M:R9?A+6;+4*"-3!/-(&P.S%OP$Y0\"887![1Q8%@&RFFN"]\?G'$#IAT1@]W
MW3]>S+"#%D>1PB[7]V!+FR:RST1^N?JFEFS95%A^M;)A-+.,Q9GF-(&Y9,;Z
M4AQ!1LQ_$$ZC&(F4:^YD?3G.-S7NM!(?E!\ 6YF;*@/@]UIL1\^Y*^@.E!H6
MRH&9]7E0]&#:L&B.1+@74 U$N.[0=/*NPS#CT:^[3D<L['%;WT9BWU:+;\8$
M/JY%UYRR4<:C&"<I9(+G$$>$0J(PA\9VS;5"0M/8*ZBF<[:I$?%.V&V^TE;<
MG@V%NJ%V\^(% W!@^KT"NQY=QAPP"=9JK&NND?N-.:A]VG3,Y::>!PE59\^7
MV\S]/,GC%"N(!&40FXTNY!AQ*&*4)UDN$;<]3]W+OAR-[D45(]1]^6+GV!5
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
MR:9G9Q[*^C^!JJ3UC 3HP-:-H</@-3#!'@-5BPENUW5>7+7A7*]L(]&J[_$
M1_J700J5_W-^HG'3?2XJ?)+=<_F.?NSQL5 /;"Z;JJ;;O.XZQ76[MV+<$$E$
M$\@1-EO52"-(LIS 5&.*4A9SEGOE5SO,.35_5"/RMG!'67FX5U4IB&VB2I_&
M(R[HNQ%-8$P'9IPMG(VX![V)=\G5H;>]'@ %8AN7&4>E'0\(GO*/SZV]RSTH
M,XX\,*#,-.;/E^:'\W4YBP333$4Q)'F>0ZQ1#)G*,IAP03BF*<D5\3-F+DTY
M/9-F*_$5N]:+.+OQ34CL!B:;'6B'&\.*<LS?0"-OT)H-3LB$*]70/=W8%1J<
ME&\IS.!VWQ7%TYJ3ZH/C.KL?:[ZR$8EB8\8(&&=Y!C'B"221SB B.<Y9A)!F
MGENEBW-.CU[J3_ ^@[E_K\2+>+NQ3% ,!Z:9QGYIPB&.3N[W\@8N[>4"3<B*
M7)WSC5](RT7]UOI73C>&:>GP17U?_V(D_V.6Q'G.-4DAT5D,<:H4)"I.H,R2
M2-G&#I31:]H.[&::VN;)YI4V!LN+1>7$?=C6U+^NZ\ >6S<Z"8+8P#32UG?
MR@DJ00?L/' "QD"M!_;S/&OO@1-U+S4?.+VA]YE@84,+7JGZS[?+BI(^*:'F
MWZRWK9SE>98HP1"DA$NSU5$2DEA%4"L4&:Y(,HSD;*GNJN@CUY.B"Y,Z+0%:
M+X'#J8?^H!9[$;V/YR[A['S*%@*[T0[+*B'!BZVX/QKN;9PKGQRP['/^Y0A/
MN&.L2Q..?1KE"$#+H9+KG:%J:&X/G:J0.)7HG.F4P)CDMB]TQB#/<@5CS3 2
ME,KTVL*9A]--S2S9RM8CNO "KLXNE$!H#>] ::F%N8,O;!BB&RJ#U;D\FNR9
MBUNV*7ZYHF7K77[T(=5\]GJYGJ\?W\P7JGAI/O9WJ^)QED289RK"4,>)V<$0
M6Q.>F[\1JI#M6)=1[K2#.3/^U BB%A%4,H*MD&Y$<0[!;F8(@,O0NQ,O2)P7
M_P7%6U9[J<1/=ZMO/YL[ZX5N_K)?W^?&&V5!7U!FNX(O739LB8E?6#D7LQBE
MBBG.(=$B@5C%.>2YT)!'6:QT%&<XU\/4EZCFGYX'M!(+O*A+2OPX3-F(&GJN
M.8IS%D$A);)U'2-(%&80,9(DN101X\+']AH,^#&8]FQ-C[W<  (^VL-Q,^ &
M@WQ@$O>LYE&)/WX!CR/41J[>4<\]R=(=1[#TK=MQ/$C/N$,[J!G(5A;>IW[>
M%H5YU>J" K\\[J_YR![MSV[_9(6L_O/%S'J[E-9B?6_>U5<KVP5K9K:?**8V
M 3Y2'&)[TD^C2$"F\I2;_:G0U*LU[Q!"3HT\*TF!%17\7DOH6Q5]B"?I1J'/
M_7P&9EJ?1^,?-CD@=J$"+H<0<=Q0S0%!/@GR''*N'I4]*_=D5;=P48=AO)LO
MU5.?Y4=EUHJYY$[-M":QV380F,O,UD- S) WBV$48TPRZU+,G$S:/I-/C90/
MQ >BDA^8F:ITH\8_+[?^>8]REKY/I)N$A\9YC*..!N):=&!E!RU'(#=@K\&
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
MXA$W:H+!BN1*_>4.ZA.#X3AU;N$#=.0TV8B5]896QMOO1W1LB4@-TU1 0K6
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
MJH!9+ %_=&T=7!F7G&U4E9JQ?M#@T8*]J8NS7:)S^?(>U'2%O<.GD/N]R3<
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
ME PN%+Z&M)_#BXM>S[YMJRS8:@M^.D2R5KCY@]*E5-@3G7BUPM<$#ETL[ G
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
MB'6J(<=40)*3@B"98Y,'$WJ="AE;O+!CK-HK"BI-PQF]S@!M=PFQ8.K9(71
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
M<"5RL$Z1DRQDD<W+O^^CIYO@1&.%V4P&72!J-]JRLPZC9<C!,S#%J6W 99/
ME91,$15WL7E?I-LIZ28PT1A%#?C>!7[NB+'L+"DI\H\RUGE-+(&*JK;'K.T3
M2A$872TG:]U_[4&BNHE,-$956VGT ;#;XRV[I[AA(JN2H:A,.C=M.I )^A*Q
M",ZBT:+U'>&#1'43OV@-L*;2Z )@MR\C&SK(O7=@K"(F<4S@N*^=N;TLV:,G
MT_$I8AGC5AH,>/X=S?4.PF%U L1TO2D2(__DY6)>52_.$RUJ4E(R@ED/T2%Q
MJ)"7$9SP=7PE5Y',0QE:Y[W<0\ZXQOC@252M!-%!1'XS3Z26(-(3:^G#^L=E
M544.2CA#)[;WEE2KW4S$%ILQ$MJ7K(UNW4KP;FK&-<P'1U0C,71QPKT_?_-F
M4=OQZN_*=F;-^[#\SS [O6A,]6JZ2K/%ZG2Y$[4V":5C6@+3D6Q&:0IXRR-X
MSC475JA@6U\L'DGRV(VZVV#G9B>Q)Q-CA[C=K&^2@V1<!0W(>.VLY2*$0(M0
M/'MBH(AI@/91-\@8NS'0$P+A7A ^7B9= &MG<M?CN1>EYS9F 5:C!!7(MPF"
M(4C#9)!16X_-6X8?0>_8Z?.#J,(G$V!O<-UN./0Y:24#),6)=1@9Q*0M6'*?
M8K'&:!S"M]BE85P-^'3ROQMXCQ=%!][%BYPW-C)9RV&:W\Q?AJ]3\H8GDM-^
M2S;6PD8#RG@&GCPC4%JY@B$Y'EM?M]]!RKCZ:C1@M1!,!_CZ@.M0;V1?A^5\
MT^IKMYE$F:;I>I**CL&:VN>6N3HF0H/+(8"E%2J&L@35.K_L8:K&C8^,AKK&
MXNKBM-Q9PX9G=8SO$K_4-()ON+VU?;M8U7+N=^53^#[QSCNMF 2,9(PHD2)$
M93-PSEA$D95TS:=*/8[$<4,MXZG$ 079@:J\:1I/'"NH' M@ GEGJM0>B+H4
MP)RB,<46VSS0<I.*L4/%@S@,1S*[@[N&W732>;YE/44JH:PV$&VI\!<2'(OT
M9?!19\TE<ZTC(P_1-.XU^Y.6;A\MDF80&VF2Y_N-3+[@>IK(B+^RJ.9C/:^^
MZTEG?-ZSS*<<^.F1)R\)5-E+)&39 *09)40717:"<<5;)]4\Q<#/J]'%K9GQ
MXG3]9;&<_C?F"2,U'VO5*.U.4MEU0IB+,H.2Q9L8N-2Z=8'!_12-?<_0&"GW
M!WN/$D<7KL'5]=!6?K?<\#!O[-CWN-PL<>(CDZ5V[M$LUJ*<(" @\<U$YYPT
MO@C=OMG?/I2-'<M]4K@U$4^'L-MNHS>KU2EM(3(XG,[<0LXUA<:G7&N!!"V-
MF>!]Y$:W[A1^-S5C6_XC:+,#Q-"!ZWC;2MZ=KE?K,*^5#Q/%90XZ,/#:IAJX
M\1 <6M!:ZAB9R[:Y*_  2<\@6Z0UM X52 ?XV@GYW#CT2PA11,S$G(WV-1*\
M<Q:2RUPH;Z2)K1,C[R'G&7B8Q^"JE2"Z. 9W%G/GV<Y=]#ZA@&)YJ#&> +'$
M#.BECS%IDTWK&J8]R!HWF_LI4=9$,+VA[<I1SUA402(#I@0G5X4)J'=HM2*;
M3GJ6M&6MFR[?0<JXJ=U/K[L.$$"?2-H]V9$5HZU(X+!.>F19 SV!0> Z9Y:4
M,*9UR/X^>L9M#/_TF#I4%,V,K*>+MEXP=[4HV]NO]E'66]XQ='3UH64UBJIN
M'WWQLLOX/T>?"H'&RK0I9/'@6/' 9! 2/<?4?'[@':0<GWKQ#>>G^"OMREH
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
M)O"0.XSS=&".R]4''*]K[B&HG0UT,EU?)%CNON^6<TO0\<10^5HJ@S4CH4#
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
M[7B=0ES(8U,H-C57G [4%'6@Y8;F,P >2^->6'// &N#"J=W\-4 YN)TOOY
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
ML>04?_R*:5JFZ?WI\NMBA>_67W#YZ4N8TX_J@$BD[Z<OM(.(J3'QR)4'89T
ME5*J67*V=L=B28CB_'6'<I (QU&+V ^USS'&/ZJXF^&]Y4!Z.@,6)_@I?,?5
M$>/H;WG*\</H'R*MT2CZB]?<,HN<+/"8HPQ 1U]M698=>*T+A.2*R)SLJ;A7
MB^1'[.9[R#G^O-R"CAY>/>#UZC_#['2[KV>SQ1]AGG"2!)?D<2"PDBJ@;888
M#(.$ ETDDQ)MZZ%6>Y U;L52*X3</$3;RJ.# _5U*5A')>,%SVJBR,O%?#V=
MGT[GG]]]Q6V[07)4!"JK40*MHG9.]Y%6%AQ8LAH,>3!6E];]6_>G;MPBIJ$
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
MA;Y39FMY>2V_T11_2,T5JN;.]7M70;]CS<I[6]EN6!A)PO2/"W)?I_%VO?W
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
M*AJ*?5==-.7P]37']A_U1PPK_/UO_@M02P,$%     @ C6C,5F.S6W=&!P
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
M5O/DL!=3$A[^T/O1LN"(!_F<I@H"08FB(>22I3/X&%+Y"2RKG#7@V5*P6:S
M<SP?/G+QB5V28EPQE=##2D^O4;SW&F:1WI2'R\->R"Z!A0<UMNNV2-2*_*CI
M.,V(N.WVGK^_YT<^F>Z%?BO\TZVA*$XO9*1:)O2@-F>I%5.]?J?IV7NM3'47
M+%1QQW6<GVIFZF$OXJG"]03*%W\+-9O*B)BAOBE7BL\[6E?Y1?',O"IZI2R2
ML%G:,3[7"MV5?, 3+CI;COEU]8@5D3E+EIVW$S:G$D[I L[YG*1OZY*DTI)4
ML*B8*-G?%(W&1<SKHO!I#_4D+*65CZZGO1I>Q6S*%/B>[<)-G]:\63,VP/!3
M\4S6#H;GDY/CDT%_<C(ZA;.+\_%%_W0"D]'+-]W=APM[; ]L& \'QGS7;SGU
MEV]X?PS]H]'99'CTN@)>A;GM[,+H&"8_#V'</W_7/QV.K='OOP[_@/Y@HD<\
MQ_&>[LX=)/"$[?_%8]*\>[>3( 8>@8HIY&E(A42_D(YC*NAT"0$5BD6,RCJP
M%&(F(2 9"9A: I% 4A2-&$[2*CXP$7#X+9K9R-LBXX(HQE/8UJK?;.U[GM,=
M\'E&TJ5Y<[L[=8BX@"S'R1)=0AUK>X(&1KS8$WJQD&?ZH,#I,B<8*<57DW1&
M2R?&1$Q)2J4UNDKH$OJ!TB,ZHW4<)T9,^\$7*7Q*^2*AX8R^V6KM=^_/^%JF
MVAC5C(0A'E960B/5V?4KZF88OE1U+,^SGR^?)K2[W<J5KV_"S>BX;1V)">;E
M?4X$[I5D"><4L:&J?)60 ,SB,1=S<!WKO8&%'LS0 AX"Q<B&T,\$2\!'-.AB
M +&3)Z@M0/D$ 0H+IF(C).A?.1-45P4&4]=(VB8[*YC0(!=,:<'A51"3=$8K
MK+AMOXF :'<1W^'_F/B"F& I)GI>T$2 .@C3U(-$(W-D)5'@)"),HR835.J,
M&B(B20(HA[:0!.?)#%,LZR:Q$4M)&NCOJ#%D1C?F4<_*DP(0'&%5+'H3@_9&
MLA\B]N?)Y1%Z7; 5_)*G%%ROV Z/P6F!0$6F":U&IUP@YUMH?4(R23O5GV[(
M9):098>EQ@8CU-T\PR[U^1"0I#P/#>:+X;)2;C5M?[^EBV6%,51AM7!91]NF
MCFZH<'.LO6^WG?N''=M=C36,[D(_>B QF0<UOU8)E.CK>-D5N#<+;0W(VTX4
M]G_]O>H4>[6YUY7FB>JF:!GT;7VTJIRN<OP(G\O$ZK2CRR!YPD*HS']- ?DO
M0?A</U]TV6:B,H@9C?#DPE-,L4L*H[(,TTPWB)$QYV3%;N\X$;?.L6]MUVR?
M"8:DGR'K;\1DYR[$5 :66MH%,SX8!T='X?M@G*$-1UB1?\]\\QDA>$U>?L"=
M 6=8$S%=GYKVS/6Z<&R*)UK7Y;&@BHBE892)H$3F@HIO-1QK_'&\JA_OYX^&
M*8>>VN0WGZT!Z$/9U7/!T!KTS1P-V 4OL =2% MNA76EN8\MNZ<0L/M?;Z]C
M;,&G%*=F@E\RW8]A(WU/RZ\QLV!8HT]U-U:6]:CO@>E1+E(FXT+MK09-CZ^:
M-*S5YTQ*4[T+8%C1H^U1!'F&7[3Q5"I[LY5_S!7-K:O>C$O3/G0$38@^438N
M?Z_)S^3;N18A4V3 7&V*_,M]<?DL;J\;YM;\'U!+ 0(4 Q0    ( (UHS%8@
M!B](D 8! !\&"P 1              "  0    !V:7)C+3(P,C,P-#,P+FAT
M;5!+ 0(4 Q0    ( (UHS%:M5#:J6 P  &]^   1              "  ;\&
M 0!V:7)C+3(P,C,P-#,P+GAS9%!+ 0(4 Q0    ( (UHS%;;UM\:91L  /L#
M 0 5              "  483 0!V:7)C+3(P,C,P-#,P7V-A;"YX;6Q02P$"
M% ,4    " "-:,Q6LI.S2X0F  #J@P$ %0              @ '>+@$ =FER
M8RTR,#(S,#0S,%]D968N>&UL4$L! A0#%     @ C6C,5D32*KIZEP  R#(&
M !4              ( !E54! '9I<F,M,C R,S T,S!?;&%B+GAM;%!+ 0(4
M Q0    ( (UHS%:2'\'*:E<  -^X P 5              "  4+M 0!V:7)C
M+3(P,C,P-#,P7W!R92YX;6Q02P$"% ,4    " "-:,Q68[-;=T8'  "_'P
M&0              @ '?1 ( =FER8RTR,#(S,#0S,'AE>#,Q,6YG+FAT;5!+
M 0(4 Q0    ( (UHS%:]PXBU7P<  !D@   9              "  5Q, @!V
M:7)C+3(P,C,P-#,P>&5X,S$R;F<N:'1M4$L! A0#%     @ C6C,5N5A-^\?
M!0  /!<  !D              ( !\E," '9I<F,M,C R,S T,S!X97@S,C%N
;9RYH=&U02P4&      D "0!? @  2%D"

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